Rob Drew
6 years ago
11 changed files with 396 additions and 4 deletions
@ -0,0 +1,28 @@ |
|||||||
|
|
||||||
|
<div class="paragraph-responsive-typography-enabled node__main-content article-layout"> |
||||||
|
|
||||||
|
<section class="abstract"> |
||||||
|
<h3>Abstract</h3> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
</section> |
||||||
|
<section class="introduction"> |
||||||
|
<h2>Introduction</h2> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
<p>Elit consectetur odio illo accusamus omnis, perferendis necessitatibus! Neque minus obcaecati nostrum quos ut perferendis. Sit aut sit recusandae libero possimus ratione esse? Quibusdam nihil recusandae neque tenetur saepe! Quaerat? |
||||||
|
Sit iste facere dolorem delectus ut et aperiam. Itaque delectus odio nemo itaque ea dicta? Assumenda veritatis vel tempora praesentium laboriosam. Porro tempora sint fugit quas elit. Id expedita voluptates. |
||||||
|
</p> |
||||||
|
</section> |
||||||
|
</div> |
@ -0,0 +1,19 @@ |
|||||||
|
<header class="paragraph-responsive-typography-enabled article-header"> |
||||||
|
<h1 class="article--title">Example of an Fairly Long Article Title, One that is Likely Multi-line </h1> |
||||||
|
<section class="article-header--metadata"> |
||||||
|
<div class="left"> |
||||||
|
<div class="article--contributor"> |
||||||
|
Robert N. Drew |
||||||
|
</div> |
||||||
|
<div class="article--contributor__affiliation">University of Prince Edward Island</div> |
||||||
|
</div> |
||||||
|
<div class="right"> |
||||||
|
<div class="article--type">Article</div> |
||||||
|
<div class="article--date-published"> |
||||||
|
Published September 20, 2018 |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</section> |
||||||
|
|
||||||
|
</header> |
||||||
|
|
@ -0,0 +1,56 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Theme override to display a menu. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - menu_name: The machine name of the menu. |
||||||
|
* - items: A nested list of menu items. Each menu item contains: |
||||||
|
* - attributes: HTML attributes for the menu item. |
||||||
|
* - below: The menu item child items. |
||||||
|
* - title: The menu link title. |
||||||
|
* - url: The menu link url, instance of \Drupal\Core\Url |
||||||
|
* - localized_options: Menu link localized options. |
||||||
|
* - is_expanded: TRUE if the link has visible children within the current |
||||||
|
* menu tree. |
||||||
|
* - is_collapsed: TRUE if the link has children within the current menu tree |
||||||
|
* that are not currently visible. |
||||||
|
* - in_active_trail: TRUE if the link is in the active trail. |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{{ dump() }} |
||||||
|
{% import _self as menus %} |
||||||
|
|
||||||
|
{# |
||||||
|
We call a macro which calls itself to render the full tree. |
||||||
|
@see http://twig.sensiolabs.org/doc/tags/macro.html |
||||||
|
#} |
||||||
|
{{ menus.menu_links(items, attributes, 0) }} |
||||||
|
|
||||||
|
{% macro menu_links(items, attributes, menu_level) %} |
||||||
|
{% import _self as menus %} |
||||||
|
{% if items %} |
||||||
|
{% if menu_level == 0 %} |
||||||
|
<ul{{ attributes.addClass('menu menu__author-tasks') }}> |
||||||
|
{% else %} |
||||||
|
<ul class="menu"> |
||||||
|
{% endif %} |
||||||
|
{% for item in items %} |
||||||
|
{% |
||||||
|
set classes = [ |
||||||
|
'menu-item', |
||||||
|
item.is_expanded ? 'menu-item--expanded', |
||||||
|
item.is_collapsed ? 'menu-item--collapsed', |
||||||
|
item.in_active_trail ? 'menu-item--active-trail', |
||||||
|
] |
||||||
|
%} |
||||||
|
<li{{ item.attributes.addClass(classes) }}> |
||||||
|
{{ link(item.title, item.url) }} |
||||||
|
{% if item.below %} |
||||||
|
{{ menus.menu_links(item.below, attributes, menu_level + 1) }} |
||||||
|
{% endif %} |
||||||
|
</li> |
||||||
|
{% endfor %} |
||||||
|
</ul> |
||||||
|
{% endif %} |
||||||
|
{% endmacro %} |
@ -0,0 +1,69 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Magazine+'s theme implementation to display a block. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - plugin_id: The ID of the block implementation. |
||||||
|
* - label: The configured label of the block if visible. |
||||||
|
* - configuration: A list of the block's configuration values. |
||||||
|
* - label: The configured label for the block. |
||||||
|
* - label_display: The display settings for the label. |
||||||
|
* - module: The module that provided this block plugin. |
||||||
|
* - cache: The cache settings. |
||||||
|
* - Block plugin specific settings will also be stored here. |
||||||
|
* - content: The content of this block. |
||||||
|
* - attributes: array of HTML attributes populated by modules, intended to |
||||||
|
* be added to the main container tag of this template. |
||||||
|
* - id: A valid HTML ID and guaranteed unique. |
||||||
|
* - title_attributes: Same as attributes, except applied to the main title |
||||||
|
* tag that appears in the template. |
||||||
|
* - content_attributes: Same as attributes, except applied to the main content |
||||||
|
* tag that appears in the template. |
||||||
|
* - title_prefix: Additional output populated by modules, intended to be |
||||||
|
* displayed in front of the main title tag that appears in the template. |
||||||
|
* - title_suffix: Additional output populated by modules, intended to be |
||||||
|
* displayed after the main title tag that appears in the template. |
||||||
|
* |
||||||
|
* @see template_preprocess_block() |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{% |
||||||
|
set classes = [ |
||||||
|
'toc-block--mobile', |
||||||
|
'block', |
||||||
|
'block-' ~ configuration.provider|clean_class, |
||||||
|
'block-' ~ plugin_id|clean_class, |
||||||
|
] |
||||||
|
%} |
||||||
|
{% |
||||||
|
set title_classes = [ |
||||||
|
'title' |
||||||
|
] |
||||||
|
%} |
||||||
|
<div{{ attributes.addClass(classes) }}> |
||||||
|
{{ title_prefix }} |
||||||
|
{% if label %} |
||||||
|
<h2{{ title_attributes.addClass(title_classes) }}>Sections</h2> |
||||||
|
{% endif %} |
||||||
|
{{ title_suffix }} |
||||||
|
{% block content %} |
||||||
|
<div{{ content_attributes.addClass('content') }}> |
||||||
|
{{ content }} |
||||||
|
</div> |
||||||
|
{% endblock %} |
||||||
|
</div> |
||||||
|
{#<a class="toc--title toc--dropdown-trigger" data-toggle="collapse" href="#toc-sections" role="button" aria-expanded="false" aria-controls="toc-sections">#} |
||||||
|
{#<h2{{ title_attributes.addClass(title_classes) }}>Sections</h2>#} |
||||||
|
{#</a>#} |
||||||
|
{#<div class="toc--list collapse" id="toc-sections">#} |
||||||
|
{#<div class="card card-body">#} |
||||||
|
{#{% block content %}#} |
||||||
|
{#<div{{ content_attributes.addClass('content') }}>#} |
||||||
|
{#{{ content }}#} |
||||||
|
{#</div>#} |
||||||
|
{#{% endblock %}#} |
||||||
|
{#</div>#} |
||||||
|
{#</div>#} |
@ -0,0 +1,62 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Magazine+'s theme implementation to display a block. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - plugin_id: The ID of the block implementation. |
||||||
|
* - label: The configured label of the block if visible. |
||||||
|
* - configuration: A list of the block's configuration values. |
||||||
|
* - label: The configured label for the block. |
||||||
|
* - label_display: The display settings for the label. |
||||||
|
* - module: The module that provided this block plugin. |
||||||
|
* - cache: The cache settings. |
||||||
|
* - Block plugin specific settings will also be stored here. |
||||||
|
* - content: The content of this block. |
||||||
|
* - attributes: array of HTML attributes populated by modules, intended to |
||||||
|
* be added to the main container tag of this template. |
||||||
|
* - id: A valid HTML ID and guaranteed unique. |
||||||
|
* - title_attributes: Same as attributes, except applied to the main title |
||||||
|
* tag that appears in the template. |
||||||
|
* - content_attributes: Same as attributes, except applied to the main content |
||||||
|
* tag that appears in the template. |
||||||
|
* - title_prefix: Additional output populated by modules, intended to be |
||||||
|
* displayed in front of the main title tag that appears in the template. |
||||||
|
* - title_suffix: Additional output populated by modules, intended to be |
||||||
|
* displayed after the main title tag that appears in the template. |
||||||
|
* |
||||||
|
* @see template_preprocess_block() |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{% |
||||||
|
set classes = [ |
||||||
|
'toc-block--wide', |
||||||
|
'block', |
||||||
|
'block-' ~ configuration.provider|clean_class, |
||||||
|
'block-' ~ plugin_id|clean_class, |
||||||
|
] |
||||||
|
%} |
||||||
|
{% |
||||||
|
set title_classes = [ |
||||||
|
'title' |
||||||
|
] |
||||||
|
%} |
||||||
|
<div class="toc-sticky-wrapper"> |
||||||
|
<div{{ attributes.addClass(classes) }}> |
||||||
|
<a class="toc--title toc--dropdown-trigger" data-toggle="collapse" href="#toc-sections" role="button" aria-expanded="false" aria-controls="toc-sections"> |
||||||
|
<h2{{ title_attributes.addClass(title_classes) }}>Sections</h2> |
||||||
|
</a> |
||||||
|
<div class="toc--list collapse" id="toc-sections"> |
||||||
|
<div class="card card-body"> |
||||||
|
{% block content %} |
||||||
|
<div{{ content_attributes.addClass('content') }}> |
||||||
|
{{ content }} |
||||||
|
</div> |
||||||
|
{% endblock %} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
</div> |
||||||
|
</div> |
@ -0,0 +1,18 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Default theme implementation to display a back to top link. |
||||||
|
* |
||||||
|
* Returns HTML for a back to top link. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - item: A table of contents header item. |
||||||
|
* - options: Options associated with the current header item. |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
|
||||||
|
{% set classes = ['back-to-top'] %} |
||||||
|
|
||||||
|
<a{{ attributes.addClass(classes) }}>{{ label }}</a> |
@ -0,0 +1,17 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Default theme implementation to display a Table of contents header. |
||||||
|
* |
||||||
|
* Returns HTML for a Table of contents header. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - item: A table of contents header item. |
||||||
|
* - options: Table of contents options. |
||||||
|
* - header_options: Options associated with the current header item. |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
|
||||||
|
<{{ tag }}{{ attributes }}>{% if header_options.display_number %}<span>{{ header_options.number_prefix }}{% if options.number_path and path %}{{ path }}{% else %}{{ value }}{% endif %}{{ header_options.number_suffix }}</span>{% endif %}{{ html }}</{{ tag }}> |
@ -0,0 +1,26 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Default theme implementation to display a table of contents as a select menu. |
||||||
|
* |
||||||
|
* Returns HTML for a Table of contents select menu. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - index: List of header items. Each header item contains: |
||||||
|
* - prefix: The header option prefix. Either indentation or the complete path. |
||||||
|
* - title: The header title. |
||||||
|
* - url: The header fragrment (ie hash) URL, instance of \Drupal\Core\Url. |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{% set classes = ['toc', 'toc-menu'] %} |
||||||
|
<form {{ attributes.addClass(classes) }}> |
||||||
|
<select> |
||||||
|
<option value="">{{ title }}</option> |
||||||
|
{% for item in index %} |
||||||
|
<option value="{{ item.url }}">{{ item.prefix }}{{ item.title }}</option> |
||||||
|
{% endfor %} |
||||||
|
</select> |
||||||
|
</form> |
||||||
|
|
@ -0,0 +1,20 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Default theme implementation to display a responsive table of contents. |
||||||
|
* |
||||||
|
* Returns HTML for a responsive table of contents. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - desktop: A render array represent a table of content for desktop. |
||||||
|
* - mobile: A render array represent a table of content for mobile. |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{% set classes = ['toc', 'toc-responsive'] %} |
||||||
|
<div {{ attributes.addClass(classes) }}> |
||||||
|
{{ desktop }} |
||||||
|
{{ mobile }} |
||||||
|
</div> |
||||||
|
|
@ -0,0 +1,60 @@ |
|||||||
|
{# |
||||||
|
/** |
||||||
|
* @file |
||||||
|
* Default theme implementation to display a Table of contents as a tree. |
||||||
|
* |
||||||
|
* Returns HTML for a nested list representation of a Table of contents.. |
||||||
|
* |
||||||
|
* Available variables: |
||||||
|
* - tree: A nested list of header items. Each header item contains: |
||||||
|
* - list_tag: HTML tag for the list. |
||||||
|
* - list_attributes: HTML attributes for the list. |
||||||
|
* - attributes: HTML attributes for the table of contents or list item. |
||||||
|
* - below: The table of contents child items. |
||||||
|
* - title: The table of contents or header title. |
||||||
|
* - url: The header fragrment (ie hash) URL, instance of \Drupal\Core\Url. |
||||||
|
* |
||||||
|
* @ingroup themeable |
||||||
|
*/ |
||||||
|
#} |
||||||
|
{# |
||||||
|
We call a macro which calls itself to render the full tree. |
||||||
|
@see http://twig.sensiolabs.org/doc/tags/macro.html |
||||||
|
#} |
||||||
|
{% import _self as toc_api_tree %} |
||||||
|
{% set classes = ['toc', 'toc-tree'] %} |
||||||
|
|
||||||
|
<div{{ attributes.addClass(classes) }}> |
||||||
|
|
||||||
|
{% if tree.title and not options.block %} |
||||||
|
<h3>{{ tree.title }}</h3> |
||||||
|
{% endif %} |
||||||
|
|
||||||
|
{{ toc_api_tree.tree_links(tree) }} |
||||||
|
|
||||||
|
</div> |
||||||
|
|
||||||
|
{% macro tree_links(item) %} |
||||||
|
{% import _self as toc_api_tree %} |
||||||
|
|
||||||
|
{% if item.below_type %} |
||||||
|
<ol class="{{ item.below_type }}"> |
||||||
|
{% else %} |
||||||
|
<ul> |
||||||
|
{% endif %} |
||||||
|
|
||||||
|
{% for child_item in item.below %} |
||||||
|
<li{{ child_item.attributes.setAttribute('value', child_item.value) }}> |
||||||
|
{{ link(child_item.html, child_item.url) }} |
||||||
|
{% if child_item.below %} |
||||||
|
{{ toc_api_tree.tree_links(child_item) }} |
||||||
|
{% endif %} |
||||||
|
</li> |
||||||
|
{% endfor %} |
||||||
|
|
||||||
|
{% if item.below_type %} |
||||||
|
</ol> |
||||||
|
{% else %} |
||||||
|
</ul> |
||||||
|
{% endif %} |
||||||
|
{% endmacro %} |
Loading…
Reference in new issue