Browse Source

added masonry.js

master
rdrew 2 months ago
parent
commit
783f4f0cf7
  1. 26
      css/components/islandora_mods.css
  2. 9
      js/masonry.pkgd.min.js
  3. 9
      olivespostcards.libraries.yml
  4. 3
      package.json
  5. 138
      templates/layout/page--postcards.html.twig
  6. 39
      yarn.lock

26
css/components/islandora_mods.css

@ -0,0 +1,26 @@
/*collection grid*/
/*.grid-item {*/
/*border: 1px solid #ccc;*/
/*padding: 4px;*/
/*border-radius: 4px;*/
/*background: #ece8e3;*/
/*.grid-item__image {*/
/*margin: 0;*/
/*height: 160px;*/
/*overflow: hidden;*/
/*img {*/
/*width: 100%;*/
/*}*/
/*}*/
/*.grid-item__title {*/
/*display: block;*/
/*text-align: center;*/
/*line-height: 1.2;*/
/*margin: 10px 0 6px 0;*/
/*a {*/
/*text-decoration: none;*/
/*font-family: var(--font-serif);*/
/*[>font-size: var(--font-size-l);<]*/
/*}*/
/*}*/
/*}*/

9
js/masonry.pkgd.min.js vendored

File diff suppressed because one or more lines are too long

9
olivespostcards.libraries.yml

@ -305,3 +305,12 @@ tags:
css:
theme:
css/components/tags.css: {}
masonry:
version: VERSION # Optional: track version
js:
js/masonry.pkgd.min.js: { minified: true }
dependencies:
- core/jquery # Required for Masonry
css: {} # Optional: if you need custom CSS

3
package.json

@ -99,7 +99,8 @@
"dependencies": {
"browser-sync": "^2.29.3",
"browsersync": "^0.0.1-security",
"bs-rewrite-rules": "^2.1.2"
"bs-rewrite-rules": "^2.1.2",
"masonry-layout": "^4.2.2"
},
"packageManager": "yarn@4.0.2"
}

138
templates/layout/page--postcards.html.twig

@ -0,0 +1,138 @@
{#
/**
* @file
* Olivespostcards's theme implementation to display a single page.
*
* The doctype, html, head and body tags are not in this template. Instead they
* can be found in the html.html.twig template normally located in the
* core/modules/system directory.
*
* Available variables:
*
* General utility variables:
* - base_path: The base URL path of the Drupal installation. Will usually be
* "/" unless you have installed Drupal in a sub-directory.
* - is_front: A flag indicating if the current page is the front page.
* - logged_in: A flag indicating if the user is registered and signed in.
* - is_admin: A flag indicating if the user has permission to access
* administration pages.
*
* Site identity:
* - front_page: The URL of the front page. Use this instead of base_path when
* linking to the front page. This includes the language domain or prefix.
*
* Page content (in order of occurrence in the default page.html.twig):
* - node: Fully loaded node, if there is an automatically-loaded node
* associated with the page and the node ID is the second argument in the
* page's path (e.g. node/12345 and node/12345/revisions, but not
* comment/reply/12345).
*
* Regions:
* - page.header: Items for the header region.
* - page.highlighted: Items for the highlighted region.
* - page.primary_menu: Items for the primary menu region.
* - page.secondary_menu: Items for the secondary menu region.
* - page.content: The main content of the current page.
* - page.sidebar: Items for the first sidebar.
* - page.featured_bottom_first: Items for the first featured bottom region.
* - page.featured_bottom_second: Items for the second featured bottom region.
* - page.footer_first: Items for the first footer column.
* - page.footer_second: Items for the second footer column.
* - page.breadcrumb: Items for the breadcrumb region.
* - page.social: Items for the social region.
*
* @see template_preprocess_page()
* @see html.html.twig
*/
#}
{{ attach_library('olivespostcards/masonry') }}
<div id="page-wrapper" class="page-wrapper">
<div id="page">
{% if page.header or page.primary_menu or page.secondary_menu %}
<header id="header" class="site-header" data-drupal-selector="site-header" role="banner">
{# Gets fixed by JavaScript at wide widths. #}
<div class="site-header__fixable" data-drupal-selector="site-header-fixable">
<div class="site-header__initial">
<button class="sticky-header-toggle" data-drupal-selector="sticky-header-toggle" role="switch" aria-controls="site-header__inner" aria-label="{{ 'Sticky header'|t }}" aria-checked="false">
<span class="sticky-header-toggle__icon">
<span></span>
<span></span>
<span></span>
</span>
</button>
</div>
{# Needs to extend full width so box shadow will also extend. #}
<div id="site-header__inner" class="site-header__inner" data-drupal-selector="site-header-inner">
<div class="container site-header__inner__container">
{{ page.header }}
{% if page.primary_menu or page.secondary_menu %}
<div class="mobile-buttons" data-drupal-selector="mobile-buttons">
<button class="mobile-nav-button" data-drupal-selector="mobile-nav-button" aria-label="{{ 'Main Menu'|t }}" aria-controls="header-nav" aria-expanded="false">
<span class="mobile-nav-button__label">{{ 'Menu'|t }}</span>
<span class="mobile-nav-button__icon"></span>
</button>
</div>
<div id="header-nav" class="header-nav" data-drupal-selector="header-nav">
{{ page.primary_menu }}
{{ page.secondary_menu }}
</div>
{% endif %}
</div>
</div>
</div>
</header>
{% endif %}
<div id="main-wrapper" class="layout-main-wrapper layout-container">
<div id="main" class="layout-main">
<div class="main-content">
<a id="main-content" tabindex="-1"></a>
{{ page.hero }}
<div class="main-content__container container">
{{ page.highlighted }}
{{ page.breadcrumb }}
{% if page.sidebar %}
<div class="sidebar-grid grid-full">
<main role="main" class="site-main">
{{ page.content_above }}
{{ page.content }}
</main>
{{ page.sidebar }}
</div>
{% else %}
<main role="main">
{{ page.content_above }}
{{ page.content }}
</main>
{% endif %}
{{ page.content_below }}
</div>
</div>
<div class="social-bar">
{{ page.social }}
</div>
</div>
</div>
<footer class="site-footer">
<div class="site-footer__inner container">
{{ page.footer_top }}
{{ page.footer_bottom }}
</div>
</footer>
<div class="overlay" data-drupal-selector="overlay"></div>
</div>
</div>

39
yarn.lock

@ -2582,6 +2582,11 @@ dequal@^2.0.3:
resolved "https://registry.yarnpkg.com/dequal/-/dequal-2.0.3.tgz#2644214f1997d39ed0ee0ece72335490a7ac67be"
integrity sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==
desandro-matches-selector@^2.0.0:
version "2.0.2"
resolved "https://registry.yarnpkg.com/desandro-matches-selector/-/desandro-matches-selector-2.0.2.tgz#717beed4dc13e7d8f3762f707a6d58a6774218e1"
integrity sha512-+1q0nXhdzg1IpIJdMKalUwvvskeKnYyEe3shPRwedNcWtnhEKT3ZxvFjzywHDeGcKViIxTCAoOYQWP1qD7VNyg==
destroy@~1.0.4:
version "1.0.4"
resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80"
@ -3129,6 +3134,11 @@ etag@1.8.1, etag@^1.8.1, etag@~1.8.1:
resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887"
integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==
ev-emitter@^1.0.0:
version "1.1.1"
resolved "https://registry.yarnpkg.com/ev-emitter/-/ev-emitter-1.1.1.tgz#8f18b0ce5c76a5d18017f71c0a795c65b9138f2a"
integrity sha512-ipiDYhdQSCZ4hSbX4rMW+XzNKMD1prg/sTvoVmSLkuQ1MVlwjJQQA+sW8tMYR3BLUr9KjodFV4pvzunvRhd33Q==
eventemitter3@^4.0.0:
version "4.0.7"
resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f"
@ -3343,6 +3353,13 @@ find-up@^4.1.0:
locate-path "^5.0.0"
path-exists "^4.0.0"
fizzy-ui-utils@^2.0.0:
version "2.0.7"
resolved "https://registry.yarnpkg.com/fizzy-ui-utils/-/fizzy-ui-utils-2.0.7.tgz#7df45dcc4eb374a08b65d39bb9a4beedf7330505"
integrity sha512-CZXDVXQ1If3/r8s0T+v+qVeMshhfcuq0rqIFgJnrtd+Bu8GmDmqMjntjUePypVtjHXKJ6V4sw9zeyox34n9aCg==
dependencies:
desandro-matches-selector "^2.0.0"
flat-cache@^2.0.1:
version "2.0.1"
resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-2.0.1.tgz#5d296d6f04bda44a4630a301413bdbc2ec085ec0"
@ -3489,6 +3506,11 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@
has-symbols "^1.0.3"
hasown "^2.0.0"
get-size@^2.0.2:
version "2.0.3"
resolved "https://registry.yarnpkg.com/get-size/-/get-size-2.0.3.tgz#54a1d0256b20ea7ac646516756202769941ad2ef"
integrity sha512-lXNzT/h/dTjTxRbm9BXb+SGxxzkm97h/PCIKtlN/CBCxxmkkIVV21udumMS93MuVTDX583gqc94v3RjuHmI+2Q==
get-stdin@^6.0.0:
version "6.0.0"
resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b"
@ -4695,6 +4717,14 @@ markdown-table@^1.1.0:
resolved "https://registry.yarnpkg.com/markdown-table/-/markdown-table-1.1.3.tgz#9fcb69bcfdb8717bfd0398c6ec2d93036ef8de60"
integrity sha512-1RUZVgQlpJSPWYbFSpmudq5nHY1doEIv89gBtF0s4gW1GF2XorxcA/70M5vq7rLv0a6mhOUccRsqkwhwLCIQ2Q==
masonry-layout@^4.2.2:
version "4.2.2"
resolved "https://registry.yarnpkg.com/masonry-layout/-/masonry-layout-4.2.2.tgz#d57b44af13e601bfcdc423f1dd8348b5524de348"
integrity sha512-iGtAlrpHNyxaR19CvKC3npnEcAwszXoyJiI8ARV2ePi7fmYhIud25MHK8Zx4P0LCC4d3TNO9+rFa1KoK1OEOaA==
dependencies:
get-size "^2.0.2"
outlayer "^2.1.0"
mathml-tag-names@^2.0.1, mathml-tag-names@^2.1.3:
version "2.1.3"
resolved "https://registry.yarnpkg.com/mathml-tag-names/-/mathml-tag-names-2.1.3.tgz#4ddadd67308e780cf16a47685878ee27b736a0a3"
@ -5107,6 +5137,15 @@ optionator@^0.9.1:
prelude-ls "^1.2.1"
type-check "^0.4.0"
outlayer@^2.1.0:
version "2.1.1"
resolved "https://registry.yarnpkg.com/outlayer/-/outlayer-2.1.1.tgz#29863b6de10ea5dadfffcadfa0d728907387e9a2"
integrity sha512-+GplXsCQ3VrbGujAeHEzP9SXsBmJxzn/YdDSQZL0xqBmAWBmortu2Y9Gwdp9J0bgDQ8/YNIPMoBM13nTwZfAhw==
dependencies:
ev-emitter "^1.0.0"
fizzy-ui-utils "^2.0.0"
get-size "^2.0.2"
p-limit@^1.1.0:
version "1.3.0"
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8"

Loading…
Cancel
Save