From c23e6143c9fc76f97874170b903ec92702235de6 Mon Sep 17 00:00:00 2001 From: James Garrett Date: Tue, 27 Sep 2016 20:32:09 -0400 Subject: [PATCH] Launched Version --- _craftcms/templates/index.twig | 12 +- _craftcms/templates/page/_entry.twig | 12 +- _craftcms/templates/work/_entry.twig | 6 +- _dev/src/css/base/_grid.css | 22 +- _dev/src/css/components/_current-code.css | 14 +- _dev/src/css/layout/_page.css | 133 ++++- dist/src/css/style.css | 213 ++++++-- dist/src/js/scripts.js | 612 +--------------------- dist/src/js/scripts.js.map | 2 +- 9 files changed, 307 insertions(+), 719 deletions(-) diff --git a/_craftcms/templates/index.twig b/_craftcms/templates/index.twig index 1da6d39..c76441c 100755 --- a/_craftcms/templates/index.twig +++ b/_craftcms/templates/index.twig @@ -4,14 +4,16 @@
+
-
+
{% include '_includes/current-code' %}
-
+ +
@@ -26,7 +28,7 @@ {% cache unless not craft.config.cache %} {% for post in craft.entries.section('work') %}
-
+
@@ -40,9 +42,9 @@
-
+
-
+
{% set image = post.thumbnail.first() %} {% if image %} diff --git a/_craftcms/templates/page/_entry.twig b/_craftcms/templates/page/_entry.twig index ecf6422..ba01ec6 100644 --- a/_craftcms/templates/page/_entry.twig +++ b/_craftcms/templates/page/_entry.twig @@ -4,14 +4,14 @@ {% cache unless not craft.config.cache %}
-
+
-
+
{% include '_includes/current-code' %}
-
+
@@ -32,7 +32,7 @@ {% case 'blockBody' %}
-
+
{{block.body}} {% if block.showSocial %} @@ -75,10 +75,10 @@
{% for section in entry.resumeSection %}
-
+

{{section.sectionTitle}}

-
+
{{section.body}}
diff --git a/_craftcms/templates/work/_entry.twig b/_craftcms/templates/work/_entry.twig index 6f105cc..2ee8484 100644 --- a/_craftcms/templates/work/_entry.twig +++ b/_craftcms/templates/work/_entry.twig @@ -4,7 +4,7 @@ {% cache unless not craft.config.cache %}
-
+
@@ -41,7 +41,7 @@ {% case 'blockBody' %}
-
+
{{block.body}}
@@ -51,7 +51,7 @@ {% case 'blockHalfImages' %}
{% for image in block.images %} -
+
{{ macros.responsive_image(image, {transformMode: 'fit' }) }}
diff --git a/_dev/src/css/base/_grid.css b/_dev/src/css/base/_grid.css index e79da10..d5b76ae 100644 --- a/_dev/src/css/base/_grid.css +++ b/_dev/src/css/base/_grid.css @@ -77,7 +77,7 @@ margin-bottom: var(--grid-base-row-spacing); } - +.row:last-child{ margin-bottom: 0; } .row--marginhalf{ margin-bottom: calc( var(--grid-base-row-spacing) / 2); } .row--nomargin{ margin-bottom: 0; } @@ -137,8 +137,8 @@ .col--12{ @mixin col-size 100%; } .col--nogutter{ padding-left: 0; padding-right: 0; } -.col--paddingright{ padding-right: var(--grid-base-gutter--double); } -.col--paddingleft{ padding-left: var(--grid-base-gutter--double); } +.col--paddingright{ padding-right: var(--grid-base-gutter--triple); } +.col--paddingleft{ padding-left: var(--grid-base-gutter--triple); } .col--first{ @mixin col-order 0, -1; } .col--last{ @mixin col-order 2, 1; } @@ -191,8 +191,8 @@ .col--12xs{ @mixin col-size 100%; } .col--nogutterxs{ padding-left: 0; padding-right: 0; } - .col--paddingrightxs{ padding-right: var(--grid-base-gutter--double); } - .col--paddingleftxs{ padding-left: var(--grid-base-gutter--double); } + .col--paddingrightxs{ padding-right: var(--grid-base-gutter--triple); } + .col--paddingleftxs{ padding-left: var(--grid-base-gutter--triple); } .col--firstxs{ @mixin col-order 0, -1; } .col--lastxs{ @mixin col-order 2, 1; } } @@ -245,8 +245,8 @@ .col--12sm{ @mixin col-size 100%; } .col--noguttersm{ padding-left: 0; padding-right: 0; } - .col--paddingrightsm{ padding-right: var(--grid-base-gutter--double); } - .col--paddingleftsm{ padding-left: var(--grid-base-gutter--double); } + .col--paddingrightsm{ padding-right: var(--grid-base-gutter--triple); } + .col--paddingleftsm{ padding-left: var(--grid-base-gutter--triple); } .col--firstsm{ @mixin col-order 0, -1; } .col--lastsm{ @mixin col-order 2, 1; } } @@ -299,8 +299,8 @@ .col--12md{ @mixin col-size 100%; } .col--noguttermd{ padding-left: 0; padding-right: 0; } - .col--paddingrightmd{ padding-right: var(--grid-base-gutter--double); } - .col--paddingleftmd{ padding-left: var(--grid-base-gutter--double); } + .col--paddingrightmd{ padding-right: var(--grid-base-gutter--triple); } + .col--paddingleftmd{ padding-left: var(--grid-base-gutter--triple); } .col--firstmd{ @mixin col-order 0, -1; } .col--lastmd{ @mixin col-order 2, 1; } } @@ -353,8 +353,8 @@ .col--12lg{ @mixin col-size 100%; } .col--nogutterlg{ padding-left: 0; padding-right: 0; } - .col--paddingrightlg{ padding-right: var(--grid-base-gutter--double); } - .col--paddingleftlg{ padding-left: var(--grid-base-gutter--double); } + .col--paddingrightlg{ padding-right: var(--grid-base-gutter--triple); } + .col--paddingleftlg{ padding-left: var(--grid-base-gutter--triple); } .col--firstlg{ @mixin col-order 0, -1; } .col--lastlg{ @mixin col-order 2, 1; } } \ No newline at end of file diff --git a/_dev/src/css/components/_current-code.css b/_dev/src/css/components/_current-code.css index b6504b5..94b4a3a 100644 --- a/_dev/src/css/components/_current-code.css +++ b/_dev/src/css/components/_current-code.css @@ -5,6 +5,14 @@ background-image: url('https://source.unsplash.com/collection/134120/1200x1400'); } +.currentCode--small{ + display: none; + + @media (--screen-sm-min) { + display: block; + } +} + .currentCode p{ margin: 0; @@ -25,5 +33,9 @@ p.currentCode-text{ p.currentCode-title{ margin-bottom: 10px; - font-size: 3.6rem; + font-size: 2.6rem; + + @media (--screen-sm-min) { + font-size: 3.6rem; + } } \ No newline at end of file diff --git a/_dev/src/css/layout/_page.css b/_dev/src/css/layout/_page.css index 75eb7b5..eed8c74 100755 --- a/_dev/src/css/layout/_page.css +++ b/_dev/src/css/layout/_page.css @@ -1,11 +1,23 @@ .page-section--full{ - height: 100vh; + height: auto; + + @media (--screen-sm-min) { + height: 100vh; + } } .page-section--medium{ - height: 65vh; + height: auto; + + @media (--screen-sm-min) { + height: 65vh; + } } .page-section--small{ - height: 45vh; + height: auto; + + @media (--screen-sm-min) { + height: 45vh; + } } .page-currentCode{ @@ -14,13 +26,25 @@ @mixin gradient-bg top, right, rgba(0, 62, 65, 0.7), rgba(0, 176, 255, 0.7); } .page-currentCode--full{ - height: 100vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 100vh; + } } .page-currentCode--medium{ - height: 65vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 65vh; + } } .page-currentCode--small{ - height: 45vh; + height: 25vh; + + @media (--screen-sm-min) { + height: 45vh; + } } .page-textColumn{ @@ -29,23 +53,63 @@ background-color: var(--gray-darker); } .page-textColumn--full{ - height: 100vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 100vh; + } } .page-textColumn--medium{ - height: 65vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 65vh; + } } .page-textColumn--small{ - height: 45vh; + height: 25vh; + + @media (--screen-sm-min) { + height: 45vh; + } } .page-imageColumn--full{ - height: 100vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 100vh; + } } .page-imageColumn--medium{ - height: 65vh; + height: 50vh; + + @media (--screen-sm-min) { + height: 65vh; + } } .page-imageColumn--small{ - height: 45vh; + height: 20vh; + + @media (--screen-sm-min) { + height: 45vh; + } +} + +.page-textColumn-container{ + border-bottom: 1px solid white; + + @media (--screen-sm-min) { + border: none; + } +} + +.page-imageColumn-container{ + display: none; + + @media (--screen-sm-min) { + display: block; + } } .page-textColumn-header{ @@ -100,27 +164,29 @@ } .page-imageColumn--thule{ - @mixin gradient-bg top, left, rgb(27, 46, 78), rgb(111, 150, 167); + @mixin gradient-bg top, left, #2C3E50, #4CA1AF; + + } .page-imageColumn--feliz-restaurants{ - @mixin gradient-bg bottom, left, rgb(250, 142, 36), rgb(172, 8, 8); + @mixin gradient-bg bottom, left, #C02425, #F0CB35; } .page-imageColumn--invisible-sentinel{ - @mixin gradient-bg top, left, rgb(12, 66, 122), rgb(32, 138, 143); + @mixin gradient-bg top, left, #1A2980, #26D0CE; } -.page-imageColumn--timer{ - @mixin gradient-bg top, left, rgb(255, 193, 91), rgb(255, 75, 75); +.page-imageColumn--placemedia{ + @mixin gradient-bg top, left, #185a9d, #43cea2; } -.page-imageColumn--placemedia{ - @mixin gradient-bg top, left, rgb(86, 255, 106), rgb(0, 158, 229); +.page-imageColumn--timer{ + @mixin gradient-bg bottom, left, #e65245, #e43a15; } .page-imageColumn--orexo{ - @mixin gradient-bg bottom, left, rgb(193, 0, 0), rgb(77, 0, 0); + @mixin gradient-bg bottom, left, #e52d27, #b31217; } .page-imageColumn--fatback{ @@ -128,11 +194,11 @@ } .page-imageColumn--zubsolv{ - @mixin gradient-bg top, right, rgb(61, 0, 82), rgb(249, 146, 39); + @mixin gradient-bg top, right, #A83279, #D38312 ; } -.page-imageColumn--cellar{ - @mixin gradient-bg top, left, rgb(137, 93, 0), rgb(255, 191, 54); +.page-imageColumn--cellars{ + @mixin gradient-bg top, left, #ffb347, #ffcc33; } .page-imageColumn--social-feeds{ @@ -152,6 +218,17 @@ text-align: left; } +.page-imagesSection-container{ + margin-bottom: 50px; + + @media (--screen-sm-min) { + margin-bottom: 0; + } +} +.page-imagesSection-container:last-child{ + margin-bottom: 0; +} + .page-imagesSection{ padding-top: var(--page-content-padding); padding-bottom: var( --page-content-padding); @@ -173,12 +250,14 @@ } .page-resumeSection-title{ - margin-left: 100px; - padding-left: 20px; + font-weight: var(--font-bold-weight); - border-left: 2px solid var(--brand-primary); + @media (--screen-md-min) { + margin-left: 100px; + padding-left: 20px; - font-weight: var(--font-bold-weight); + border-left: 2px solid var(--brand-primary); + } } .page-resumeSection-body{ diff --git a/dist/src/css/style.css b/dist/src/css/style.css index cd5c708..ba3a906 100755 --- a/dist/src/css/style.css +++ b/dist/src/css/style.css @@ -2502,6 +2502,7 @@ th { margin-left: -0.1em; margin-bottom: 20px; } +.row:last-child{ margin-bottom: 0; } .row--marginhalf{ margin-bottom: 10px; } .row--nomargin{ margin-bottom: 0; } .row--nogutter{ margin-left: 0; margin-right: 0; } @@ -2552,8 +2553,8 @@ th { .col--11{ -ms-flex-preferred-size: 91.667%; flex-basis: 91.667%; max-width: 91.667%; } .col--12{ -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .col--nogutter{ padding-left: 0; padding-right: 0; } -.col--paddingright{ padding-right: 0.2em; } -.col--paddingleft{ padding-left: 0.2em; } +.col--paddingright{ padding-right: 0.3em; } +.col--paddingleft{ padding-left: 0.3em; } .col--first{ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } .col--last{ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } @media (min-width: 33.750em) { @@ -2603,8 +2604,8 @@ th { .col--12xs{ -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .col--nogutterxs{ padding-left: 0; padding-right: 0; } - .col--paddingrightxs{ padding-right: 0.2em; } - .col--paddingleftxs{ padding-left: 0.2em; } + .col--paddingrightxs{ padding-right: 0.3em; } + .col--paddingleftxs{ padding-left: 0.3em; } .col--firstxs{ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } .col--lastxs{ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } } @@ -2655,8 +2656,8 @@ th { .col--12sm{ -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .col--noguttersm{ padding-left: 0; padding-right: 0; } - .col--paddingrightsm{ padding-right: 0.2em; } - .col--paddingleftsm{ padding-left: 0.2em; } + .col--paddingrightsm{ padding-right: 0.3em; } + .col--paddingleftsm{ padding-left: 0.3em; } .col--firstsm{ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } .col--lastsm{ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } } @@ -2707,8 +2708,8 @@ th { .col--12md{ -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .col--noguttermd{ padding-left: 0; padding-right: 0; } - .col--paddingrightmd{ padding-right: 0.2em; } - .col--paddingleftmd{ padding-left: 0.2em; } + .col--paddingrightmd{ padding-right: 0.3em; } + .col--paddingleftmd{ padding-left: 0.3em; } .col--firstmd{ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } .col--lastmd{ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } } @@ -2759,8 +2760,8 @@ th { .col--12lg{ -ms-flex-preferred-size: 100%; flex-basis: 100%; max-width: 100%; } .col--nogutterlg{ padding-left: 0; padding-right: 0; } - .col--paddingrightlg{ padding-right: 0.2em; } - .col--paddingleftlg{ padding-left: 0.2em; } + .col--paddingrightlg{ padding-right: 0.3em; } + .col--paddingleftlg{ padding-left: 0.3em; } .col--firstlg{ -webkit-box-ordinal-group: 0; -ms-flex-order: -1; order: -1; } .col--lastlg{ -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; } } @@ -3293,14 +3294,29 @@ img { color: rgb(33, 125, 164); } .page-section--full{ - height: 100vh; + height: auto } +@media (min-width: 48em) { + .page-section--full { + height: 100vh; + } + } .page-section--medium{ - height: 65vh; + height: auto } +@media (min-width: 48em) { + .page-section--medium { + height: 65vh; + } + } .page-section--small{ - height: 45vh; + height: auto } +@media (min-width: 48em) { + .page-section--small { + height: 45vh; + } + } .page-currentCode{ padding-top: 20px; @@ -3321,37 +3337,98 @@ img { /* Standard syntax */ } .page-currentCode--full{ - height: 100vh; + height: 50vh } +@media (min-width: 48em) { + .page-currentCode--full { + height: 100vh; + } + } .page-currentCode--medium{ - height: 65vh; + height: 50vh } +@media (min-width: 48em) { + .page-currentCode--medium { + height: 65vh; + } + } .page-currentCode--small{ - height: 45vh; + height: 25vh } +@media (min-width: 48em) { + .page-currentCode--small { + height: 45vh; + } + } .page-textColumn{ padding-top: 20px; background-color: rgb(24, 24, 24); } .page-textColumn--full{ - height: 100vh; + height: 50vh } +@media (min-width: 48em) { + .page-textColumn--full { + height: 100vh; + } + } .page-textColumn--medium{ - height: 65vh; + height: 50vh } +@media (min-width: 48em) { + .page-textColumn--medium { + height: 65vh; + } + } .page-textColumn--small{ - height: 45vh; + height: 25vh } +@media (min-width: 48em) { + .page-textColumn--small { + height: 45vh; + } + } .page-imageColumn--full{ - height: 100vh; + height: 50vh } +@media (min-width: 48em) { + .page-imageColumn--full { + height: 100vh; + } + } .page-imageColumn--medium{ - height: 65vh; + height: 50vh } +@media (min-width: 48em) { + .page-imageColumn--medium { + height: 65vh; + } + } .page-imageColumn--small{ + height: 20vh +} +@media (min-width: 48em) { + .page-imageColumn--small { height: 45vh; + } + } +.page-textColumn-container{ + border-bottom: 1px solid white +} +@media (min-width: 48em) { + .page-textColumn-container { + border: none; + } + } +.page-imageColumn-container{ + display: none } +@media (min-width: 48em) { + .page-imageColumn-container { + display: block; + } + } .page-textColumn-header{ padding-left: 30px; @@ -3399,63 +3476,65 @@ img { text-decoration: none; } .page-imageColumn--thule{ - background: rgb(27, 46, 78); + background: #2C3E50; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top left, rgb(27, 46, 78), rgb(111, 150, 167)); + background: -webkit-linear-gradient(top left, #2C3E50, #4CA1AF); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top left, rgb(27, 46, 78), rgb(111, 150, 167)); + background: linear-gradient(to top left, #2C3E50, #4CA1AF); /* Standard syntax */ + + } .page-imageColumn--feliz-restaurants{ - background: rgb(250, 142, 36); + background: #C02425; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(bottom left, rgb(250, 142, 36), rgb(172, 8, 8)); + background: -webkit-linear-gradient(bottom left, #C02425, #F0CB35); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to bottom left, rgb(250, 142, 36), rgb(172, 8, 8)); + background: linear-gradient(to bottom left, #C02425, #F0CB35); /* Standard syntax */ } .page-imageColumn--invisible-sentinel{ - background: rgb(12, 66, 122); + background: #1A2980; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top left, rgb(12, 66, 122), rgb(32, 138, 143)); + background: -webkit-linear-gradient(top left, #1A2980, #26D0CE); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top left, rgb(12, 66, 122), rgb(32, 138, 143)); + background: linear-gradient(to top left, #1A2980, #26D0CE); /* Standard syntax */ } -.page-imageColumn--timer{ - background: rgb(255, 193, 91); +.page-imageColumn--placemedia{ + background: #185a9d; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top left, rgb(255, 193, 91), rgb(255, 75, 75)); + background: -webkit-linear-gradient(top left, #185a9d, #43cea2); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top left, rgb(255, 193, 91), rgb(255, 75, 75)); + background: linear-gradient(to top left, #185a9d, #43cea2); /* Standard syntax */ } -.page-imageColumn--placemedia{ - background: rgb(86, 255, 106); +.page-imageColumn--timer{ + background: #e65245; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top left, rgb(86, 255, 106), rgb(0, 158, 229)); + background: -webkit-linear-gradient(bottom left, #e65245, #e43a15); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top left, rgb(86, 255, 106), rgb(0, 158, 229)); + background: linear-gradient(to bottom left, #e65245, #e43a15); /* Standard syntax */ } .page-imageColumn--orexo{ - background: rgb(193, 0, 0); + background: #e52d27; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(bottom left, rgb(193, 0, 0), rgb(77, 0, 0)); + background: -webkit-linear-gradient(bottom left, #e52d27, #b31217); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to bottom left, rgb(193, 0, 0), rgb(77, 0, 0)); + background: linear-gradient(to bottom left, #e52d27, #b31217); /* Standard syntax */ } .page-imageColumn--fatback{ @@ -3469,23 +3548,23 @@ img { /* Standard syntax */ } .page-imageColumn--zubsolv{ - background: rgb(61, 0, 82); + background: #A83279; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top right, rgb(61, 0, 82), rgb(249, 146, 39)); + background: -webkit-linear-gradient(top right, #A83279, #D38312); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top right, rgb(61, 0, 82), rgb(249, 146, 39)); + background: linear-gradient(to top right, #A83279, #D38312); /* Standard syntax */ } -.page-imageColumn--cellar{ - background: rgb(137, 93, 0); +.page-imageColumn--cellars{ + background: #ffb347; /* For browsers that do not support gradients */ - background: -webkit-linear-gradient(top left, rgb(137, 93, 0), rgb(255, 191, 54)); + background: -webkit-linear-gradient(top left, #ffb347, #ffcc33); /* For Safari 5.1 to 6.0 */ /* For Opera 11.1 to 12.0 */ /* For Firefox 3.6 to 15 */ - background: linear-gradient(to top left, rgb(137, 93, 0), rgb(255, 191, 54)); + background: linear-gradient(to top left, #ffb347, #ffcc33); /* Standard syntax */ } .page-imageColumn--social-feeds{ @@ -3514,6 +3593,17 @@ img { .page-textSection-body{ text-align: left; } +.page-imagesSection-container{ + margin-bottom: 50px +} +@media (min-width: 48em) { + .page-imagesSection-container { + margin-bottom: 0; + } + } +.page-imagesSection-container:last-child{ + margin-bottom: 0; +} .page-imagesSection{ padding-top: 55px; padding-bottom: 55px; @@ -3531,13 +3621,15 @@ img { text-align: left; } .page-resumeSection-title{ + font-weight: 700 +} +@media (min-width: 64em) { + .page-resumeSection-title { margin-left: 100px; padding-left: 20px; - border-left: 2px solid rgb(33, 125, 164); - - font-weight: 700; -} + } + } .page-resumeSection-body{ padding-bottom: 30px; @@ -3567,6 +3659,14 @@ img { background-position: center; background-image: url('https://source.unsplash.com/collection/134120/1200x1400'); } +.currentCode--small{ + display: none +} +@media (min-width: 48em) { + .currentCode--small { + display: block; + } + } .currentCode p{ margin: 0; @@ -3586,9 +3686,14 @@ p.currentCode-text{ p.currentCode-title{ margin-bottom: 10px; - font-size: 36px; - font-size: 3.6rem; + font-size: 26px; + font-size: 2.6rem } +@media (min-width: 48em) { + p.currentCode-title { + font-size: 3.6rem; + } + } .navToggle{ -webkit-transition: .5s ease-in-out; transition: .5s ease-in-out; diff --git a/dist/src/js/scripts.js b/dist/src/js/scripts.js index 5261296..508ee50 100644 --- a/dist/src/js/scripts.js +++ b/dist/src/js/scripts.js @@ -1,612 +1,2 @@ -(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o this.options.offset) { - this.options.item.classList.add(this.options.animation); - if (!this.options.reverse) { - this.done = true; - } - } else { - this.options.item.classList.remove(this.options.animation); - } - - this.ticking = false; -}; - -// Private methods -function init() { - window.addEventListener('scroll', this.onScroll.bind(this), false); -} - -// Utitlity Methods -function extendDefaults(source, properties) { - var property; - for (property in properties) { - if (properties.hasOwnProperty(property)) { - source[property] = properties[property]; - } - } - return source; -} - -module.exports = Stick; - -},{}],6:[function(require,module,exports){ -'use strict'; - -module.exports = function (filters, filterItem, event) { - var works = document.querySelectorAll('.workList-item'); - var category = filterItem.getAttribute('data-category'); - - // Choose Work Filter - for (var f = 0; f < filters.length; f++) { - filters[f].classList.remove('workList-filter-item-is-active'); - } - - filterItem.classList.add('workList-filter-item-is-active'); - - // Filter Work List based on Category - for (var w = 0; w < works.length; w++) { - if (works[w].classList.contains(category) || category === 'all') { - works[w].classList.remove('workList-item-is-hidden'); - } else { - works[w].classList.add('workList-item-is-hidden'); - } - } -}; - -},{}],7:[function(require,module,exports){ -(function (global){ -'use strict'; - -var _wow = (typeof window !== "undefined" ? window['WOW'] : typeof global !== "undefined" ? global['WOW'] : null); - -var _wow2 = _interopRequireDefault(_wow); - -var _Nav = require('./components/Nav'); - -var _Nav2 = _interopRequireDefault(_Nav); - -var _ClientList = require('./components/ClientList'); - -var _ClientList2 = _interopRequireDefault(_ClientList); - -var _WorkFilter = require('./components/WorkFilter'); - -var _WorkFilter2 = _interopRequireDefault(_WorkFilter); - -var _Form = require('./components/Form'); - -var _Form2 = _interopRequireDefault(_Form); - -var _Stick = require('./components/Stick'); - -var _Stick2 = _interopRequireDefault(_Stick); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -document.addEventListener('DOMContentLoaded', function () { - - /* - * Navigation - * - */ - if (typeof document.querySelector('.js-navToggle') !== 'undefined' && document.querySelector('.js-navToggle') !== null || document.querySelector('.js-overlay') !== 'undefined' && document.querySelector('.js-overlay') !== null) { - var navToggles = [document.querySelector('.js-navToggle'), document.querySelector('.js-overlay')]; - for (var i = 0; i < navToggles.length; i++) { - navToggles[i].addEventListener('click', _Nav2.default.bind(this)); - } - } - - /* - * Submit Newsletter Form - * - */ - if (typeof document.querySelector('.js_form') !== 'undefined' && document.querySelector('.js_form') !== null) { - var form = document.querySelector('.js_form'); - var formContainer = document.querySelector('.js_formContainer'); - form.addEventListener('submit', _Form2.default.submitForm.bind(this, form, '

Thank you for contacting me, I\'ll be in touch with you shortly!

', formContainer, false)); - } -}); - -}).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {}) - -},{"./components/ClientList":2,"./components/Form":3,"./components/Nav":4,"./components/Stick":5,"./components/WorkFilter":6}],8:[function(require,module,exports){ -'use strict'; - -var Utils = {}; - -Utils.toggleClass = function (ele, activeClass) { - if (ele.classList) { - ele.classList.toggle(activeClass); - } else { - var classes = ele.className.split(' '); - var existingIndex = classes.indexOf(activeClass); - - if (existingIndex >= 0) { - classes.splice(existingIndex, 1); - } else { - classes.push(activeClass); - } - - ele.className = classes.join(' '); - } -}; - -Utils.closest = function (el, clazz) { - while (el.className !== clazz) { - el = el.parentNode; - if (!el) { - return null; - } - } - return el; -}; - -/* Converts a JSON string to a JavaScript object - * @param str String the JSON string - * @returns obj Object the JavaScript object - */ -Utils.toJSONObject = function (str) { - var obj = JSON.parse(str); - - return obj; -}; - -/* Converts a JavaScript object to a JSON string - * @param obj Object the JavaScript object - * @returns str String the JSON string - */ -Utils.toJSONString = function (obj) { - var str = JSON.stringify(obj); - - return str; -}; - -/* Checks if value exists in associative array - * @param arr array to search - * @param key key to use in search - * @param str string to check for - * @returns index if found | -1 if not found - */ -Utils.inObject = function (arr, key, str) { - var i = 0; - while (i < arr.length) { - if (arr[i][key] === str) { - return i; - } - i++; - } - return -1; -}; - -module.exports = Utils; - -},{}]},{},[7]) - - +!function e(t,n,o){function i(s,l){if(!n[s]){if(!t[s]){var u="function"==typeof require&&require;if(!l&&u)return u(s,!0);if(r)return r(s,!0);var a=new Error("Cannot find module '"+s+"'");throw a.code="MODULE_NOT_FOUND",a}var c=n[s]={exports:{}};t[s][0].call(c.exports,function(e){var n=t[s][1][e];return i(n?n:e)},c,c.exports,e,t,n,o)}return n[s].exports}for(var r="function"==typeof require&&require,s=0;sthis.options.offset?(this.options.item.classList.add(this.options.animation),this.options.reverse||(this.done=!0)):this.options.item.classList.remove(this.options.animation),this.ticking=!1},t.exports=o},{}],6:[function(e,t,n){"use strict";t.exports=function(e,t,n){for(var o=document.querySelectorAll(".workList-item"),i=t.getAttribute("data-category"),r=0;rThank you for contacting me, I'll be in touch with you shortly!

",o,!1))}})}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{"./components/ClientList":2,"./components/Form":3,"./components/Nav":4,"./components/Stick":5,"./components/WorkFilter":6}],8:[function(e,t,n){"use strict";var o={};o.toggleClass=function(e,t){if(e.classList)e.classList.toggle(t);else{var n=e.className.split(" "),o=n.indexOf(t);o>=0?n.splice(o,1):n.push(t),e.className=n.join(" ")}},o.closest=function(e,t){for(;e.className!==t;)if(e=e.parentNode,!e)return null;return e},o.toJSONObject=function(e){var t=JSON.parse(e);return t},o.toJSONString=function(e){var t=JSON.stringify(e);return t},o.inObject=function(e,t,n){for(var o=0;o this.options.offset) {\n this.options.item.classList.add(this.options.animation);\n if (!this.options.reverse) {\n this.done = true;\n }\n } else {\n this.options.item.classList.remove(this.options.animation);\n }\n\n this.ticking = false;\n};\n\n// Private methods\nfunction init () {\n window.addEventListener('scroll', this.onScroll.bind(this), false);\n}\n\n// Utitlity Methods\nfunction extendDefaults (source, properties) {\n var property;\n for (property in properties) {\n if (properties.hasOwnProperty(property)) {\n source[property] = properties[property];\n }\n }\n return source;\n}\n\nmodule.exports = Stick;\n","module.exports = function (filters, filterItem, event) {\n var works = document.querySelectorAll('.workList-item');\n var category = filterItem.getAttribute('data-category');\n\n // Choose Work Filter\n for (var f = 0; f < filters.length; f++) {\n filters[f].classList.remove('workList-filter-item-is-active');\n }\n\n filterItem.classList.add('workList-filter-item-is-active');\n\n // Filter Work List based on Category\n for (var w = 0; w < works.length; w++) {\n if (works[w].classList.contains(category) || category === 'all') {\n works[w].classList.remove('workList-item-is-hidden');\n } else {\n works[w].classList.add('workList-item-is-hidden');\n }\n }\n};\n","'use strict';\n\nimport WOW from 'wow';\n\nimport Nav from './components/Nav';\nimport ClientList from './components/ClientList';\nimport WorkFilter from './components/WorkFilter';\nimport Form from './components/Form';\nimport Stick from './components/Stick';\n\ndocument.addEventListener('DOMContentLoaded', function () {\n\n /*\n * Navigation\n *\n */\n if (typeof document.querySelector('.js-navToggle') !== 'undefined' && document.querySelector('.js-navToggle') !== null ||\n document.querySelector('.js-overlay') !== 'undefined' && document.querySelector('.js-overlay') !== null) {\n let navToggles = [\n document.querySelector('.js-navToggle'),\n document.querySelector('.js-overlay')\n ];\n for (var i = 0; i < navToggles.length; i++) {\n navToggles[i].addEventListener('click', Nav.bind(this));\n }\n }\n\n /*\n * Submit Newsletter Form\n *\n */\n if (typeof document.querySelector('.js_form') !== 'undefined' && document.querySelector('.js_form') !== null) {\n let form = document.querySelector('.js_form');\n let formContainer = document.querySelector('.js_formContainer');\n form.addEventListener('submit', Form.submitForm.bind(this, form, '

Thank you for contacting me, I\\'ll be in touch with you shortly!

', formContainer, false));\n }\n});\n","var Utils = {};\n\nUtils.toggleClass = function (ele, activeClass) {\n if (ele.classList) {\n ele.classList.toggle(activeClass);\n } else {\n var classes = ele.className.split(' ');\n var existingIndex = classes.indexOf(activeClass);\n\n if (existingIndex >= 0) {\n classes.splice(existingIndex, 1);\n } else {\n classes.push(activeClass);\n }\n\n ele.className = classes.join(' ');\n }\n};\n\nUtils.closest = function (el, clazz) {\n while (el.className !== clazz) {\n el = el.parentNode;\n if (!el) {\n return null;\n }\n }\n return el;\n};\n\n/* Converts a JSON string to a JavaScript object\n * @param str String the JSON string\n * @returns obj Object the JavaScript object\n */\nUtils.toJSONObject = function (str) {\n var obj = JSON.parse(str);\n\n return obj;\n};\n\n/* Converts a JavaScript object to a JSON string\n * @param obj Object the JavaScript object\n * @returns str String the JSON string\n */\nUtils.toJSONString = function (obj) {\n var str = JSON.stringify(obj);\n\n return str;\n};\n\n/* Checks if value exists in associative array\n * @param arr array to search\n * @param key key to use in search\n * @param str string to check for\n * @returns index if found | -1 if not found\n */\nUtils.inObject = function (arr, key, str) {\n var i = 0;\n while (i < arr.length) {\n if (arr[i][key] === str) {\n return i;\n }\n i++;\n }\n return -1;\n};\n\nmodule.exports = Utils;\n"]} \ No newline at end of file +{"version":3,"sources":["node_modules/browser-pack/_prelude.js","node_modules/form-serialize/index.js","scripts.js","src/js/components/ClientList.js","src/js/components/Form.js","src/js/components/Nav.js","src/js/components/Stick.js","src/js/components/WorkFilter.js","src/js/scripts.js","src/js/utils/Utils.js"],"names":["e","t","n","r","s","o","u","a","require","i","f","Error","code","l","exports","call","length","1","module","serialize","form","options","hash","undefined","result","serializer","hash_serializer","str_serialize","elements","radio_store","Object","create","element","disabled","name","k_r_success_contrls","test","nodeName","k_r_submitter","type","key","val","value","checked","empty","selectOptions","isSelectedOptions","j","option","allowedEmpty","hasValue","selected","slice","parse_keys","string","keys","prefix","children","RegExp","brackets","match","exec","push","hash_assign","shift","between","Array","isArray","_values","index","isNaN","matches","existing","replace","encodeURIComponent","2","_interopRequireDefault","obj","__esModule","default","_Utils","_Utils2","event","items","document","querySelector","lists","querySelectorAll","toggleClass","d","currentTarget","textContent","../utils/Utils","3","_formSerialize","_formSerialize2","Form","displayFormSuccess","message","container","innerHTML","displayLoading","formSuccess","classList","add","submitForm","autoClose","preventDefault","formData","request","XMLHttpRequest","open","encodeURI","setRequestHeader","onreadystatechange","status","readyState","body","getElementsByTagName","setTimeout","send","ToggleForm","form-serialize","4","5","Stick","this","lstScrollY","ticking","done","defaults","item","animation","offset","reverse","arguments","_typeof","extendDefaults","init","window","addEventListener","onScroll","bind","source","properties","property","hasOwnProperty","Symbol","iterator","constructor","prototype","lastScrollY","scrollY","requestTick","requestAnimationFrame","rafUpdate","remove","6","filters","filterItem","works","category","getAttribute","w","contains","7","global","_wow","_Nav","_Nav2","_ClientList","_WorkFilter","_Form","_Form2","_Stick","navToggles","formContainer","self","./components/ClientList","./components/Form","./components/Nav","./components/Stick","./components/WorkFilter","8","Utils","ele","activeClass","toggle","classes","className","split","existingIndex","indexOf","splice","join","closest","el","clazz","parentNode","toJSONObject","str","JSON","parse","toJSONString","stringify","inObject","arr"],"mappings":"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","file":"scripts.js","sourcesContent":["(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require==\"function\"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error(\"Cannot find module '\"+o+\"'\");throw f.code=\"MODULE_NOT_FOUND\",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require==\"function\"&&require;for(var o=0;o this.options.offset) {\n this.options.item.classList.add(this.options.animation);\n if (!this.options.reverse) {\n this.done = true;\n }\n } else {\n this.options.item.classList.remove(this.options.animation);\n }\n\n this.ticking = false;\n};\n\n// Private methods\nfunction init() {\n window.addEventListener('scroll', this.onScroll.bind(this), false);\n}\n\n// Utitlity Methods\nfunction extendDefaults(source, properties) {\n var property;\n for (property in properties) {\n if (properties.hasOwnProperty(property)) {\n source[property] = properties[property];\n }\n }\n return source;\n}\n\nmodule.exports = Stick;\n\n},{}],6:[function(require,module,exports){\n'use strict';\n\nmodule.exports = function (filters, filterItem, event) {\n var works = document.querySelectorAll('.workList-item');\n var category = filterItem.getAttribute('data-category');\n\n // Choose Work Filter\n for (var f = 0; f < filters.length; f++) {\n filters[f].classList.remove('workList-filter-item-is-active');\n }\n\n filterItem.classList.add('workList-filter-item-is-active');\n\n // Filter Work List based on Category\n for (var w = 0; w < works.length; w++) {\n if (works[w].classList.contains(category) || category === 'all') {\n works[w].classList.remove('workList-item-is-hidden');\n } else {\n works[w].classList.add('workList-item-is-hidden');\n }\n }\n};\n\n},{}],7:[function(require,module,exports){\n(function (global){\n'use strict';\n\nvar _wow = (typeof window !== \"undefined\" ? window['WOW'] : typeof global !== \"undefined\" ? global['WOW'] : null);\n\nvar _wow2 = _interopRequireDefault(_wow);\n\nvar _Nav = require('./components/Nav');\n\nvar _Nav2 = _interopRequireDefault(_Nav);\n\nvar _ClientList = require('./components/ClientList');\n\nvar _ClientList2 = _interopRequireDefault(_ClientList);\n\nvar _WorkFilter = require('./components/WorkFilter');\n\nvar _WorkFilter2 = _interopRequireDefault(_WorkFilter);\n\nvar _Form = require('./components/Form');\n\nvar _Form2 = _interopRequireDefault(_Form);\n\nvar _Stick = require('./components/Stick');\n\nvar _Stick2 = _interopRequireDefault(_Stick);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\ndocument.addEventListener('DOMContentLoaded', function () {\n\n /*\n * Navigation\n *\n */\n if (typeof document.querySelector('.js-navToggle') !== 'undefined' && document.querySelector('.js-navToggle') !== null || document.querySelector('.js-overlay') !== 'undefined' && document.querySelector('.js-overlay') !== null) {\n var navToggles = [document.querySelector('.js-navToggle'), document.querySelector('.js-overlay')];\n for (var i = 0; i < navToggles.length; i++) {\n navToggles[i].addEventListener('click', _Nav2.default.bind(this));\n }\n }\n\n /*\n * Submit Newsletter Form\n *\n */\n if (typeof document.querySelector('.js_form') !== 'undefined' && document.querySelector('.js_form') !== null) {\n var form = document.querySelector('.js_form');\n var formContainer = document.querySelector('.js_formContainer');\n form.addEventListener('submit', _Form2.default.submitForm.bind(this, form, '

Thank you for contacting me, I\\'ll be in touch with you shortly!

', formContainer, false));\n }\n});\n\n}).call(this,typeof global !== \"undefined\" ? global : typeof self !== \"undefined\" ? self : typeof window !== \"undefined\" ? window : {})\n\n},{\"./components/ClientList\":2,\"./components/Form\":3,\"./components/Nav\":4,\"./components/Stick\":5,\"./components/WorkFilter\":6}],8:[function(require,module,exports){\n'use strict';\n\nvar Utils = {};\n\nUtils.toggleClass = function (ele, activeClass) {\n if (ele.classList) {\n ele.classList.toggle(activeClass);\n } else {\n var classes = ele.className.split(' ');\n var existingIndex = classes.indexOf(activeClass);\n\n if (existingIndex >= 0) {\n classes.splice(existingIndex, 1);\n } else {\n classes.push(activeClass);\n }\n\n ele.className = classes.join(' ');\n }\n};\n\nUtils.closest = function (el, clazz) {\n while (el.className !== clazz) {\n el = el.parentNode;\n if (!el) {\n return null;\n }\n }\n return el;\n};\n\n/* Converts a JSON string to a JavaScript object\n * @param str String the JSON string\n * @returns obj Object the JavaScript object\n */\nUtils.toJSONObject = function (str) {\n var obj = JSON.parse(str);\n\n return obj;\n};\n\n/* Converts a JavaScript object to a JSON string\n * @param obj Object the JavaScript object\n * @returns str String the JSON string\n */\nUtils.toJSONString = function (obj) {\n var str = JSON.stringify(obj);\n\n return str;\n};\n\n/* Checks if value exists in associative array\n * @param arr array to search\n * @param key key to use in search\n * @param str string to check for\n * @returns index if found | -1 if not found\n */\nUtils.inObject = function (arr, key, str) {\n var i = 0;\n while (i < arr.length) {\n if (arr[i][key] === str) {\n return i;\n }\n i++;\n }\n return -1;\n};\n\nmodule.exports = Utils;\n\n},{}]},{},[7])\n\n","import Utils from '../utils/Utils';\n\nmodule.exports = function (event) {\n\n let items = [\n document.querySelector('.js-hiddenList-lists'),\n document.querySelector('.js-hiddenList-toggle')\n ];\n let lists = document.querySelectorAll('.js-hiddenList-item');\n\n for (var i = 0; i < items.length; i++) {\n Utils.toggleClass(items[i], 'is-active');\n }\n\n for (var d = 0; d < lists.length; d++) {\n Utils.toggleClass(lists[d], 'is-active');\n }\n\n // Change Button Text\n if (event.currentTarget.textContent === 'View More Clients') {\n event.currentTarget.textContent = 'View Less';\n } else {\n event.currentTarget.textContent = 'View More Clients';\n }\n};\n","import serialize from 'form-serialize';\n\nimport Utils from '../utils/Utils';\n\nvar Form = {};\n\nvar displayFormSuccess = function (form, message, container) {\n container.querySelector('.formSuccess').innerHTML = message;\n};\n\nvar displayLoading = function (form, container) {\n let formSuccess = container.querySelector('.formSuccess-loading');\n if (formSuccess.classList) {\n formSuccess.classList.add('is-active');\n }\n\n if (form.classList) {\n form.classList.add('hidden');\n }\n};\n\nForm.submitForm = function (form, message, container, autoClose, e) {\n e.preventDefault();\n\n displayLoading(form, container);\n\n let formData = serialize(form);\n let request = new XMLHttpRequest();\n\n request.open('post', encodeURI('/'), true);\n request.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=UTF-8');\n request.onreadystatechange = function () {\n if (request.status === 200 && request.readyState === 4) {\n displayFormSuccess(form, message, container);\n if (autoClose) {\n let body = document.getElementsByTagName('body')[0];\n setTimeout(function () {\n Utils.toggleClass(container, 'is-active');\n Utils.toggleClass(body, 'is-locked');\n }, 1200);\n }\n } else if (request.status === 200 && request.readyState !== 4) {\n displayLoading(form, container);\n } else {\n // console.log(\"Failed\");\n }\n };\n\n request.send(formData);\n};\n\nForm.ToggleForm = function (container, e) {\n let body = document.getElementsByTagName('body')[0];\n\n Utils.toggleClass(container, 'is-active');\n\n // Apply locked class on body\n Utils.toggleClass(body, 'is-locked');\n};\n\nmodule.exports = Form;\n","import Utils from '../utils/Utils';\n\nmodule.exports = function () {\n const items = [\n document.querySelector('.js-nav'),\n document.querySelector('.js-navToggle'),\n document.querySelector('.js-overlay')\n ];\n const body = document.getElementsByTagName('body')[0];\n\n // Loop siteNav items and apply active class\n for (var i = 0; i < items.length; i++) {\n Utils.toggleClass(items[i], 'is-active');\n }\n\n // Apply locked class on body\n Utils.toggleClass(body, 'is-locked');\n};\n","'use strict';\n\nfunction Stick () {\n this.lstScrollY = 0;\n this.ticking = false;\n this.done = false;\n\n var defaults = {\n item: null,\n animation: null,\n offset: null,\n reverse: false\n };\n\n if (arguments[0] && typeof arguments[0] === 'object') {\n this.options = extendDefaults(defaults, arguments[0]);\n }\n\n init.call(this);\n}\n\n// Public Methods\nStick.prototype.onScroll = function () {\n if (!this.done) {\n this.lastScrollY = window.scrollY;\n this.requestTick();\n }\n};\n\nStick.prototype.requestTick = function () {\n if (!this.ticking) {\n requestAnimationFrame(this.rafUpdate.bind(this));\n this.ticking = true;\n }\n};\n\nStick.prototype.rafUpdate = function () {\n if (this.lastScrollY > this.options.offset) {\n this.options.item.classList.add(this.options.animation);\n if (!this.options.reverse) {\n this.done = true;\n }\n } else {\n this.options.item.classList.remove(this.options.animation);\n }\n\n this.ticking = false;\n};\n\n// Private methods\nfunction init () {\n window.addEventListener('scroll', this.onScroll.bind(this), false);\n}\n\n// Utitlity Methods\nfunction extendDefaults (source, properties) {\n var property;\n for (property in properties) {\n if (properties.hasOwnProperty(property)) {\n source[property] = properties[property];\n }\n }\n return source;\n}\n\nmodule.exports = Stick;\n","module.exports = function (filters, filterItem, event) {\n var works = document.querySelectorAll('.workList-item');\n var category = filterItem.getAttribute('data-category');\n\n // Choose Work Filter\n for (var f = 0; f < filters.length; f++) {\n filters[f].classList.remove('workList-filter-item-is-active');\n }\n\n filterItem.classList.add('workList-filter-item-is-active');\n\n // Filter Work List based on Category\n for (var w = 0; w < works.length; w++) {\n if (works[w].classList.contains(category) || category === 'all') {\n works[w].classList.remove('workList-item-is-hidden');\n } else {\n works[w].classList.add('workList-item-is-hidden');\n }\n }\n};\n","'use strict';\n\nimport WOW from 'wow';\n\nimport Nav from './components/Nav';\nimport ClientList from './components/ClientList';\nimport WorkFilter from './components/WorkFilter';\nimport Form from './components/Form';\nimport Stick from './components/Stick';\n\ndocument.addEventListener('DOMContentLoaded', function () {\n\n /*\n * Navigation\n *\n */\n if (typeof document.querySelector('.js-navToggle') !== 'undefined' && document.querySelector('.js-navToggle') !== null ||\n document.querySelector('.js-overlay') !== 'undefined' && document.querySelector('.js-overlay') !== null) {\n let navToggles = [\n document.querySelector('.js-navToggle'),\n document.querySelector('.js-overlay')\n ];\n for (var i = 0; i < navToggles.length; i++) {\n navToggles[i].addEventListener('click', Nav.bind(this));\n }\n }\n\n /*\n * Submit Newsletter Form\n *\n */\n if (typeof document.querySelector('.js_form') !== 'undefined' && document.querySelector('.js_form') !== null) {\n let form = document.querySelector('.js_form');\n let formContainer = document.querySelector('.js_formContainer');\n form.addEventListener('submit', Form.submitForm.bind(this, form, '

Thank you for contacting me, I\\'ll be in touch with you shortly!

', formContainer, false));\n }\n});\n","var Utils = {};\n\nUtils.toggleClass = function (ele, activeClass) {\n if (ele.classList) {\n ele.classList.toggle(activeClass);\n } else {\n var classes = ele.className.split(' ');\n var existingIndex = classes.indexOf(activeClass);\n\n if (existingIndex >= 0) {\n classes.splice(existingIndex, 1);\n } else {\n classes.push(activeClass);\n }\n\n ele.className = classes.join(' ');\n }\n};\n\nUtils.closest = function (el, clazz) {\n while (el.className !== clazz) {\n el = el.parentNode;\n if (!el) {\n return null;\n }\n }\n return el;\n};\n\n/* Converts a JSON string to a JavaScript object\n * @param str String the JSON string\n * @returns obj Object the JavaScript object\n */\nUtils.toJSONObject = function (str) {\n var obj = JSON.parse(str);\n\n return obj;\n};\n\n/* Converts a JavaScript object to a JSON string\n * @param obj Object the JavaScript object\n * @returns str String the JSON string\n */\nUtils.toJSONString = function (obj) {\n var str = JSON.stringify(obj);\n\n return str;\n};\n\n/* Checks if value exists in associative array\n * @param arr array to search\n * @param key key to use in search\n * @param str string to check for\n * @returns index if found | -1 if not found\n */\nUtils.inObject = function (arr, key, str) {\n var i = 0;\n while (i < arr.length) {\n if (arr[i][key] === str) {\n return i;\n }\n i++;\n }\n return -1;\n};\n\nmodule.exports = Utils;\n"],"sourceRoot":"/source/"} \ No newline at end of file