jumbo-jekyll-theme 4.7.8 → 4.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: '08596f4623ba80a88ec441f83effa5e70e812b0a1c03ce550d0dc69f086c05aa'
4
- data.tar.gz: c75c68cbb8f0399e5c866858aee24addd7fbe73a75eac01cc362c681d2f58fc1
3
+ metadata.gz: 23167a57bce65c4933fd14e2d4a4b137ac94b0daad1adb80a3df4c8a09629dbc
4
+ data.tar.gz: ce55accff320705b076fc39bac3c4de5f91bd5bfd26ee4e65359c605af3fa3c8
5
5
  SHA512:
6
- metadata.gz: fa2215b67f7f1abfa817a8925a7a7ebe7a6121092aefddfaac2ca3f346750a3c296314c3071a73cc8d4f8efd66146a02f8abf7a64cf8e2156adc86487a10803d
7
- data.tar.gz: 3ec94b0f4c434361937c04a0748bf0237b1557bc5d2f3ec6ba4c6cec8f7f6f5d786a8a7b1344c182228f43226611baf24231882b3ee022a6c1f85311725eab72
6
+ metadata.gz: 47d1102e4fa33c804c54599bf97cb5bba64502c0358b02182e40a5392c039be1d3f02fc48fa86c61dbe8741b01eed30c24ffbf0ea8951903c40c4dcbe1d58933
7
+ data.tar.gz: 9681f2fb2b2b388f4655cca1de7b33fb6f38471ea6dc685e34a9384712b1b59239921dffa6301b993ddda339d4e4c6d85897c7fcac307e7932bcb620286cf2a0
data/_config.yml CHANGED
@@ -39,11 +39,9 @@ exclude:
39
39
  - _static-site
40
40
  - .sass-cache
41
41
  - _site
42
- # Sass Configuration for the site styles
43
- sass:
44
- style: compressed
45
- load_paths:
46
- - assets/css
42
+ - package.json
43
+ - node_modules
44
+ - gulpfile.js
47
45
  # Compress HTML using the jekyll-tidy plugin.
48
46
  jekyll_tidy:
49
47
  # Toggle compression of HTML
@@ -98,19 +96,6 @@ defaults:
98
96
  type: "authors"
99
97
  values:
100
98
  layout: author
101
- # Jekyll Assets setup
102
- assets:
103
- # Compress JS Assets - uses the uglifier
104
- compression: true
105
- gzip: true
106
- # Autoprefixer default settings
107
- autoprefixer:
108
- browsers: ["last 2 versions","> 5%","IE 9"]
109
- # These are the paths to look for assets
110
- sources:
111
- - assets/js/
112
- - assets/images/
113
- - assets/css/
114
99
  # Jekyll relative links plugin settings
115
100
  jekyll_relative_links:
116
101
  process_all_collections: true
@@ -118,14 +103,9 @@ jekyll_relative_links:
118
103
  plugins:
119
104
  - jekyll-seo-tag
120
105
  - jekyll-sitemap
121
- - uglifier
122
- - jekyll-assets
123
- - jekyll-theme-assets-updated
124
- - jekyll-tidy
125
106
  - jekyll-redirect-from
126
- - jekyll-responsive-image
127
- - autoprefixer-rails
128
107
  - jekyll-paginate-v2
108
+ - jekyll-picture-tag-latest
129
109
  collections:
130
110
  authors:
131
111
  output: true
@@ -136,65 +116,6 @@ liquid:
136
116
  readme_index:
137
117
  enabled: true
138
118
  remove_originals: false
139
-
140
- # Jeykyll Responsive Image Configuration
141
- responsive_image:
142
- cache: false
143
- # [Required]
144
- # Path to the image template.
145
- template: _includes/images/responsive-image.html
146
-
147
- # [Optional, Default: 85]
148
- # Quality to use when resizing images.
149
- default_quality: 90
150
-
151
- # [Optional, Default: []]
152
- # An array of resize configuration objects. Each object must contain at least
153
- # a `width` value.
154
- sizes:
155
- - width: 400 # [Required] How wide the resized image will be.
156
- quality: 70 # [Optional] Overrides default_quality for this size.
157
- - width: 800
158
- quality: 70
159
-
160
- # [Optional, Default: false]
161
- # Rotate resized images depending on their EXIF rotation attribute. Useful for
162
- # working with JPGs directly from digital cameras and smartphones
163
- auto_rotate: false
164
-
165
- # [Optional, Default: false]
166
- # Strip EXIF and other JPEG profiles. Helps to minimize JPEG size and win friends
167
- # at Google PageSpeed.
168
- strip: false
169
-
170
- # [Optional, Default: assets]
171
- # The base directory where assets are stored. This is used to determine the
172
- # `dirname` value in `output_path_format` below.
173
- base_path: assets
174
-
175
- # [Optional, Default: assets/resized/%{filename}-%{width}x%{height}.%{extension}]
176
- # The template used when generating filenames for resized images. Must be a
177
- # relative path.
178
- #
179
- # Parameters available are:
180
- # %{dirname} Directory of the file relative to `base_path` (assets/sub/dir/some-file.jpg => sub/dir)
181
- # %{basename} Basename of the file (assets/some-file.jpg => some-file.jpg)
182
- # %{filename} Basename without the extension (assets/some-file.jpg => some-file)
183
- # %{extension} Extension of the file (assets/some-file.jpg => jpg)
184
- # %{width} Width of the resized image
185
- # %{height} Height of the resized image
186
- #
187
- output_path_format: assets/resized/%{width}/%{basename}
188
-
189
- # [Optional, Default: true]
190
- # Whether or not to save the generated assets into the source folder.
191
- save_to_source: false
192
-
193
- # [Optional, Default: []]
194
- # By default, only images referenced by the responsive_image and responsive_image_block
195
- # tags are resized. Here you can set a list of paths or path globs to resize other
196
- # images. This is useful for resizing images which will be referenced from stylesheets.
197
- extra_images:
198
- - assets/foo/bar.png
199
- - assets/bgs/*.png
200
- - assets/avatars/*.{jpeg,jpg}
119
+ picture:
120
+ source: "assets/images"
121
+ output: "assets/images/processed"
data/_data/picture.yml ADDED
@@ -0,0 +1,100 @@
1
+ # Example picture presets:
2
+ # TODO: change to EMs, because safari sucks.
3
+
4
+ # Media presets are used in several places:
5
+ # - To specify alternate source images (for art direction)
6
+ # - To build the 'sizes' attribute
7
+ # - When given alternate source images, specify which sizes to generate.
8
+ media_presets:
9
+ wide_desktop: 'min-width: 1801px'
10
+ desktop: 'max-width: 1800px'
11
+ wide_tablet: 'max-width: 1200px'
12
+ tablet: 'max-width: 900px'
13
+ mobile: 'max-width: 600px'
14
+
15
+ # Markup presets allow you to group settings together, and select one of them by name in your jekyll
16
+ # tag. All settings are optional.
17
+ markup_presets:
18
+ default:
19
+
20
+ # Optionally specify a markup type. Your current options are 'picture', 'img', or 'auto'
21
+ # (default).
22
+ markup: auto
23
+
24
+ # Must be an array, in order of decreasing preference. Defaults to just 'original'.
25
+ formats: [webp, original]
26
+
27
+ # Must be an array: which image sizes (width in pixels) to generate (unless directed otherwise
28
+ # below). If not specified, will use sensible default values.
29
+ widths: [200, 400, 800, 1600]
30
+
31
+ # Alternate source images (for art direction) are associated with media query presets. Here, you
32
+ # can optionally specify a different set of sizes to generate for those alternate source images.
33
+ # This is how you avoid generating a 1800 pixel wide image that's only shown on narrow screens.
34
+ # Must be arrays.
35
+ media_widths:
36
+ mobile: [200, 400, 600]
37
+ tablet: [400, 600, 800]
38
+
39
+ # Specifies an optional, unconditional size attribute. Can be given alone, or if specified in
40
+ # combination with 'sizes' below, will be given last (when no media queries apply).
41
+ size: 800px
42
+
43
+ # For building the 'sizes' attribute on img and source tags. specifies how wide the image will
44
+ # be when a given media query is true. Note that every source in a given <picture> tag will have
45
+ # the same associated sizes attribute.
46
+ sizes:
47
+ mobile: 100vw
48
+ desktop: 60vw
49
+
50
+ # Specify the properties of the fallback image. If not specified, will return a 900 pixel
51
+ # wide image in the original format.
52
+ fallback_width: 800
53
+ fallback_format: original
54
+
55
+ # Attributes can be added to each HTML element, by type:
56
+ attributes:
57
+ picture: 'class="awesome" data-volume="11"'
58
+ img: 'class="some-other-class"'
59
+
60
+ # This is an example of how you would create a 'multiplier' based srcset; useful when an image
61
+ # will always be the same size on all screens, but you'd like to supply higher resolution images
62
+ # to devices with higher pixel ratios.
63
+ icon:
64
+ base_width: 20
65
+ pixel_ratios: [1, 1.5, 2]
66
+ fallback_width: 20
67
+ attributes:
68
+ img: 'class="icon"'
69
+
70
+ # Here's an example of how you'd configure jekyll-picture-tag to work with something like
71
+ # lazyload:
72
+ # https://github.com/verlok/lazyload
73
+ lazy:
74
+ markup: data_auto
75
+ formats: [webp, original]
76
+ widths: [400, 750, 1000]
77
+ noscript: true # Default: false
78
+ attributes:
79
+ img: class="lazyload"
80
+
81
+ thumb:
82
+ markup: data_auto
83
+ formats: [webp, original]
84
+ widths: [400, 750, 1000]
85
+ noscript: true # Default: false
86
+ attributes:
87
+ img: class="lazyload"
88
+
89
+ placeholder:
90
+ markup: data_auto
91
+ formats: [webp, original]
92
+ noscript: true # Default: false
93
+ attributes:
94
+ img: class="lazyload"
95
+
96
+ # This is an example of how you'd get generated image and a URL, and nothing else.
97
+ direct:
98
+ markup: direct_url
99
+ fallback_format: webp # Default original
100
+ fallback_width: 600 # Default 800
@@ -1,8 +1,7 @@
1
1
  <div class="row breadcrumb-container"
2
2
  {% if site.data.settings.breadcrumb.image %}
3
- style="background-image: url('{% asset_path '{{site.data.settings.breadcrumb.image}}' %}');
4
- "
5
- {% endif %}"> <!--- Row Start ---->
3
+ style="background-image: url({{site.data.settings.breadcrumb.image}});"
4
+ {% endif %}> <!--- Row Start ---->
6
5
  <div class="container breadcrumb-inner-container"><!--- Container Start ---->
7
6
  <h1>
8
7
  {% if page.title %}
data/_includes/css.html CHANGED
@@ -1,9 +1,11 @@
1
- {% if include.pageCSS %}
2
- {% capture css-package %}/assets/css/main-{{include.pageCSS}}.css{% endcapture %}
3
- <link rel="stylesheet" href="{{ css-package | relative_url }}">
4
- {% elsif include.layoutCSS %}
5
- {% capture css-package %}/assets/css/main-{{include.layoutCSS}}.css{% endcapture %}
6
- <link rel="stylesheet" href="{{ css-package | relative_url }}">
1
+ {% if page.css-package %}
2
+ {% capture css-package %}/assets/css/main-{{page.css-package}}.css{% endcapture %}
3
+ <link rel="stylesheet" href="{{ css-package | relative_url }}?v={% bust_cache %}">
4
+ {% elsif layout.css-package %}
5
+ {% capture css-package %}/assets/css/main-{{layout.css-package}}.css{% endcapture %}
6
+ <link rel="stylesheet" href="{{ css-package | relative_url }}?v={% bust_cache %}">
7
+ {% elsif layout.css-package == "main" or page.css-package == "main" %}
8
+ <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}?v={% bust_cache %}">
7
9
  {% else %}
8
- <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}">
9
- {% endif %}
10
+ <link rel="stylesheet" href="{{ "/assets/css/main.css" | relative_url }}?v={% bust_cache %}">
11
+ {% endif %}
@@ -4,7 +4,6 @@
4
4
  {% assign timeframe = 604800 %}
5
5
  {% assign post_in_seconds = post.date | date: "%s" | plus: 0 %}
6
6
  {% assign recent_posts = "now" | date: "%s" | minus: timeframe %}
7
-
8
7
  {% if forloop.first and paginator.page == 1 %}
9
8
  <style>
10
9
  @media(min-width: 1000px){
@@ -17,37 +16,13 @@
17
16
  <div class="featured-post-row">
18
17
  <div class="col-xs-12 col-sm-7 col-sm-push-5 latest-featured-post">
19
18
  <a href="{{post.url}}">
20
- {% assign image_path = "" %}
21
- {% if post.image.thumb %}
22
- {% capture image_path %}{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
23
- {% capture full_path %}/{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
24
- {% elsif post.image.name %}
25
- {% capture image_path %}{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
26
- {% capture full_path %}/{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
27
- {% elsif post.image.path %}
28
- {% capture image_path %}{{post.image.path | remove_first: "/" }}{% endcapture %}
29
- {% capture full_path %}{{post.image.path}}{% endcapture %}
30
- {% elsif post.image == site.data.settings.social_share_image %}
31
- {% capture image_path %}{{site.data.settings.placeholder | remove_first: "/" }}{% endcapture %}
32
- {% capture full_path %}{{site.data.settings.placeholder}}{% endcapture %}
33
- {% elsif post.image %}
34
- {% capture image_path %}{{post.image | remove_first: "/" }}{% endcapture %}
35
- {% capture full_path %}{{post.image}}{% endcapture %}
36
- {% else %}
37
- <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
38
- data-src="{{site.data.settings.placeholder}}" alt="{{post.title}}" class="center-block img-responsive lazyload"/>
39
- {% endif %}
40
- {% if image_path != "" %}
41
- {% responsive_image_block %}
42
- template: _includes/thumbnail_image.html
43
- path: {{ image_path }}
44
- fullpath: {{ full_path }}
45
- {% if post.title %}
46
- title: {{ post.title | slugify: "ascii"}}
47
- alt: {{ post.title | slugify: "ascii"}}
19
+ {% if post.image.path %}
20
+ {% assign imagePath = post.image.path | replace: '/assets/images/', '' %}
21
+ {% picture thumb {{imagePath}} alt=post.title %}
22
+ {% else %}
23
+ {% assign imagePath = site.data.settings.placeholder | replace: '/assets/images/', '' %}
24
+ {% picture placeholder {{imagePath}} alt=post.title %}
48
25
  {% endif %}
49
- {% endresponsive_image_block %}
50
- {% endif %}
51
26
  </a>
52
27
  </div>
53
28
  <div class="col-xs-12 col-sm-5 col-sm-pull-7 latest-featured-post-content">
@@ -84,39 +59,14 @@
84
59
  <div class="blog-post-item">
85
60
  <a href="{{post.url}}">
86
61
  <div class="blog-featured-image {% if post.image == site.data.settings.social_share_image %}using-placeholder{% endif %}">
87
-
88
- {% assign image_path = "" %}
89
- {% if post.image.thumb %}
90
- {% capture image_path %}{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
91
- {% capture full_path %}/{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
92
- {% elsif post.image.name %}
93
- {% capture image_path %}{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
94
- {% capture full_path %}/{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
95
- {% elsif post.image.path %}
96
- {% capture image_path %}{{post.image.path | remove_first: "/" }}{% endcapture %}
97
- {% capture full_path %}{{post.image.path}}{% endcapture %}
98
- {% elsif post.image == site.data.settings.social_share_image %}
99
- {% capture image_path %}{{site.data.settings.placeholder | remove_first: "/" }}{% endcapture %}
100
- {% capture full_path %}{{site.data.settings.placeholder}}{% endcapture %}
101
- {% assign using_placeholder = "true" %}
102
- {% elsif post.image %}
103
- {% capture image_path %}{{post.image | remove_first: "/" }}{% endcapture %}
104
- {% capture full_path %}{{post.image}}{% endcapture %}
62
+ {% if post.image.path %}
63
+ {% assign imagePath = post.image.path | replace: '/assets/images/', '' %}
64
+ {% picture thumb {{imagePath}} alt=post.title %}
105
65
  {% else %}
106
- <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
107
- data-src="{{site.data.settings.placeholder}}" alt="{{post.title}}" class="center-block img-responsive lazyload"/>
66
+ {% assign imagePath = site.data.settings.placeholder | replace: '/assets/images/', '' %}
67
+ {% picture placeholder {{imagePath}} alt=post.title %}
108
68
  {% endif %}
109
-
110
69
  {% if image_path != "" %}
111
- {% responsive_image_block %}
112
- template: _includes/thumbnail_image.html
113
- path: {{ image_path }}
114
- fullpath: {{ full_path }}
115
- {% if post.title %}
116
- title: {{ post.title | slugify: "ascii"}}
117
- alt: {{ post.title | slugify: "ascii"}}
118
- {% endif %}
119
- {% endresponsive_image_block %}
120
70
  {% endif %}
121
71
  <div class="read-article">
122
72
  <i class="fa fa-eye"></i> Read Article
data/_includes/head.html CHANGED
@@ -8,9 +8,7 @@
8
8
  {% endif %}
9
9
  </title>
10
10
  {% include_cached css.html pageCSS=page.css-package layoutCSS=layout.css-package %}
11
- <link rel="icon" href="{% if site.data.settings.favicon %}
12
- {% asset_path '{{site.data.settings.favicon}}' %}
13
- {% endif %}" type="image/png" />
11
+ <link rel="icon" href="{{site.data.settings.favicon}}" type="image/png" />
14
12
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
15
13
  {% include_cached google-analytics.html %}
16
14
  {% if page.keywords %}
data/_includes/image.html CHANGED
@@ -1,6 +1,6 @@
1
1
  {% if include.lightbox_disabled %}
2
- ![{{include.alt}}](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==){:class="img-responsive lazyload {% if include.class %}{{include.class}}{% endif %}" data-src="{% asset_path '{{include.name}}' %}"}
2
+ ![{{include.alt}}](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==){:class="img-responsive lazyload {% if include.class %}{{include.class}}{% endif %}" data-src="{{include.path}}"}
3
3
  {% else %}
4
- [![{{include.alt}}](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==){:class="img-responsive lazyload {% if include.class %}{{include.class}}{% endif %}" data-src="{% asset_path '{{include.name}}' %}"}]({% if include.url %}{{include.url}}{% elsif include.lightbox_disabled %}{% else %}{% asset_path "{{include.name}}" %}{% endif %}){% if include.lightbox_disabled %}{% else %}{% if include.url %}{% else %}{: data-featherlight="{% asset_path '{{include.name}}' %}" data-title="{{include.alt}}"}{% endif %}{% endif %}
4
+ [![{{include.alt}}](data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==){:class="img-responsive lazyload {% if include.class %}{{include.class}}{% endif %}" data-src="{{include.path}}"}]({% if include.url %}{{include.url}}{% elsif include.lightbox_disabled %}{% else %}"{{include.path}}"{% endif %}){% if include.lightbox_disabled %}{% else %}{% if include.url %}{% else %}{: data-featherlight="{{include.name}}" data-title="{{include.alt}}"}{% endif %}{% endif %}
5
5
  {% endif %}
6
6
 
@@ -1,10 +1,9 @@
1
1
  {% if page.js-package %}
2
2
  {% capture js-package %}package-{{page.js-package}}{% endcapture %}
3
- <script type="text/javascript" src="{% asset_path {{js-package}} %}"></script>
3
+ <script type="text/javascript" src="{% asset_path {{js-package}} %}?v={% bust_cache %}"></script>
4
4
  {% elsif layout.js-package %}
5
5
  {% capture js-package %}package-{{layout.js-package}}{% endcapture %}
6
- <script type="text/javascript" src="{% asset_path {{js-package}} %}"></script>
6
+ <script type="text/javascript" src="{% asset_path {{js-package}} %}?v={% bust_cache %}"></script>
7
7
  {% else %}
8
- <script type="text/javascript" src="{% asset_path package-main %}"></script>
9
- {% endif %}
10
-
8
+ <script type="text/javascript" src="{% asset_path package-main %}?v={% bust_cache %}"></script>
9
+ {% endif %}
@@ -18,54 +18,18 @@
18
18
  {% if post.image.thumb %}
19
19
  {% capture image_path %}{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
20
20
  {% capture full_path %}/{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
21
- {% responsive_image_block %}
22
- template: _includes/thumb.html
23
- path: {{ image_path }}
24
- fullpath: {{ full_path }}
25
- {% if post.title %}
26
- title: {{ post.title | slugify: "ascii"}}
27
- alt: {{ post.title | slugify: "ascii"}}
28
- {% endif %}
29
- {% endresponsive_image_block %}
30
21
  {% elsif post.image.name %}
31
22
  {% capture image_path %}{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
32
23
  {% capture full_path %}/{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
33
- {% responsive_image_block %}
34
- template: _includes/thumb.html
35
- path: {{ image_path }}
36
- fullpath: {{ full_path }}
37
- {% if post.title %}
38
- title: {{ post.title | slugify: "ascii"}}
39
- alt: {{ post.title | slugify: "ascii"}}
40
- {% endif %}
41
- {% endresponsive_image_block %}
42
24
  {% elsif post.image.path %}
43
25
  {% capture image_path %}{{post.image.path | remove_first: '/'}}{% endcapture %}
44
26
  {% capture full_path %}{{post.image.path }}{% endcapture %}
45
- {% responsive_image_block %}
46
- template: _includes/thumb.html
47
- path: {{ image_path }}
48
- fullpath: {{ full_path }}
49
- {% if post.title %}
50
- title: {{ post.title | slugify: "ascii"}}
51
- alt: {{ post.title | slugify: "ascii"}}
52
- {% endif %}
53
- {% endresponsive_image_block %}
54
27
  {% elsif post.image == site.data.settings.social_share_image %}
55
28
  <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="{{site.data.settings.placeholder}}"
56
29
  alt="{{post.title}}" class="center-block img-responsive lazyload" />
57
30
  {% elsif post.image %}
58
31
  {% capture image_path %}{{post.image | remove_first: '/'}}{% endcapture %}
59
32
  {% capture full_path %}{{post.image }}{% endcapture %}
60
- {% responsive_image_block %}
61
- template: _includes/thumb.html
62
- path: {{ image_path }}
63
- fullpath: {{ full_path }}
64
- {% if post.title %}
65
- title: {{ post.title | slugify: "ascii"}}
66
- alt: {{ post.title | slugify: "ascii"}}
67
- {% endif %}
68
- {% endresponsive_image_block %}
69
33
  {% else %}
70
34
  <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
71
35
  data-src="{{site.data.settings.placeholder}}" alt="{{post.title}}" class="img-responsive lazyload"/>
@@ -108,54 +72,18 @@
108
72
  {% if post.image.thumb %}
109
73
  {% capture image_path %}{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
110
74
  {% capture full_path %}/{{site.blog_images_dir}}thumbs/{{post.image.thumb}}{% endcapture %}
111
- {% responsive_image_block %}
112
- template: _includes/thumb.html
113
- path: {{ image_path }}
114
- fullpath: {{ full_path }}
115
- {% if post.title %}
116
- title: {{ post.title | slugify: "ascii"}}
117
- alt: {{ post.title | slugify: "ascii"}}
118
- {% endif %}
119
- {% endresponsive_image_block %}
120
75
  {% elsif post.image.name %}
121
76
  {% capture image_path %}{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
122
77
  {% capture full_path %}/{{site.blog_images_dir}}{{post.image.name}}{% endcapture %}
123
- {% responsive_image_block %}
124
- template: _includes/thumb.html
125
- path: {{ image_path }}
126
- fullpath: {{ full_path }}
127
- {% if post.title %}
128
- title: {{ post.title | slugify: "ascii"}}
129
- alt: {{ post.title | slugify: "ascii"}}
130
- {% endif %}
131
- {% endresponsive_image_block %}
132
78
  {% elsif post.image.path %}
133
79
  {% capture image_path %}{{post.image.path | remove_first: '/' }}{% endcapture %}
134
80
  {% capture full_path %}{{post.image.path }}{% endcapture %}
135
- {% responsive_image_block %}
136
- template: _includes/thumb.html
137
- path: {{ image_path }}
138
- fullpath: {{ full_path }}
139
- {% if post.title %}
140
- title: {{ post.title | slugify: "ascii"}}
141
- alt: {{ post.title | slugify: "ascii"}}
142
- {% endif %}
143
- {% endresponsive_image_block %}
144
81
  {% elsif post.image == site.data.settings.social_share_image %}
145
82
  <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="{{site.data.settings.placeholder}}"
146
83
  alt="{{post.title}}" class="center-block img-responsive lazyload" />
147
84
  {% elsif post.image %}
148
85
  {% capture image_path %}{{post.image | remove_first: '/' }}{% endcapture %}
149
86
  {% capture full_path %}{{post.image }}{% endcapture %}
150
- {% responsive_image_block %}
151
- template: _includes/thumb.html
152
- path: {{ image_path }}
153
- fullpath: {{ full_path }}
154
- {% if post.title %}
155
- title: {{ post.title | slugify: "ascii"}}
156
- alt: {{ post.title | slugify: "ascii"}}
157
- {% endif %}
158
- {% endresponsive_image_block %}
159
87
  {% else %}
160
88
  <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="
161
89
  data-src="{{site.data.settings.placeholder}}" alt="{{post.title}}" class="img-responsive lazyload"/>
@@ -1,6 +1,34 @@
1
+ {% assign resizedImageTypes = "jpg,jpeg,png" | split: ',' %}
2
+ {% assign resized = false %}
3
+ {% for imageType in resizedImageTypes %}
4
+ {% if include.path contains imageType %}
5
+ {% assign resized = true %}
6
+ {% endif %}
7
+ {% endfor %}
8
+
9
+ {% if resized %}
10
+ {% assign webpImage = include.path | replace: "/assets/images", "/assets/images/webp"| split: "." %}
11
+ {% assign webpImage = webpImage[0] | append: ".webp" %}
12
+ {% assign imageType = "image/" | append: include.type %}
13
+
14
+ {% assign smallImage = include.path | replace: '/assets/images' , '/assets/images/400' %}
15
+ {% assign mediumImage = include.path | replace: '/assets/images' , '/assets/images/800' %}
16
+ {% assign largeImage = include.path | replace: '/assets/images' , '/assets/images/1400' %}
17
+
1
18
  <picture>
2
- {% for i in resized %}
3
- <source media="(min-width: {{ i.width }}px)" data-srcset="/{{ i.path }}">
4
- {% endfor %}
5
- <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/{{ path }}" class="img-responsive lazyload">
6
- </picture>
19
+ <!--[if IE 9]><video style="display: none;><![endif]-->
20
+ <source data-srcset="{{smallImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 480px)" type="image/webp" />
21
+ <source data-srcset="{{smallImage}}" media="(max-width: 480px)" type="{{imageType}}" />
22
+ <source data-srcset="{{mediumImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 900px)" type="image/webp" />
23
+ <source data-srcset="{{mediumImage}}" media="(max-width: 900px)" type="{{imageType}}" />
24
+ <source data-srcset="{{largeImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 1400px)" type="image/webp" />
25
+ <source data-srcset="{{largeImage}}" media="(max-width: 1400px)" type="{{imageType}}" />
26
+ <source data-srcset="{{include.path | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" type="image/webp"/>
27
+ <source data-srcset="{{include.path}}" type="{{imageType}}"/>
28
+ <!--[if IE 9]></video><![endif]-->
29
+ <img data-src="{{largeImage}}" class="lazyload" alt="{{include.alt}}" />
30
+ </picture>
31
+ {% else %}
32
+ <img data-src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" src="{{include.image}}"
33
+ alt="{{include.alt}}" class="lazyload"/>
34
+ {% endif %}
@@ -0,0 +1,31 @@
1
+ {% assign resizedImageTypes = "jpg,jpeg,png" | split: ',' %}
2
+ {% assign resized = false %}
3
+ {% for imageType in resizedImageTypes %}
4
+ {% if include.path contains imageType %}
5
+ {% assign resized = true %}
6
+ {% endif %}
7
+ {% endfor %}
8
+ {% if resized %}
9
+ {% assign webpImage = include.path | replace: "/assets/images", "/assets/images/webp"| split: "." %}
10
+ {% assign webpImage = webpImage[0] | append: ".webp" %}
11
+ {% assign imageType = "image/" | append: include.type %}
12
+
13
+ {% assign smallImage = include.path | replace: '/assets/images' , '/assets/images/400' %}
14
+ {% assign mediumImage = include.path | replace: '/assets/images' , '/assets/images/800' %}
15
+ {% assign largeImage = include.path | replace: '/assets/images' , '/assets/images/1400' %}
16
+
17
+ <picture>
18
+ <!--[if IE 9]><video style="display: none;><![endif]-->
19
+ <source data-srcset="{{smallImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 480px)" type="image/webp" />
20
+ <source data-srcset="{{smallImage}}" media="(max-width: 480px)" type="{{imageType}}" />
21
+ <source data-srcset="{{mediumImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 900px)" type="image/webp" />
22
+ <source data-srcset="{{mediumImage}}" media="(max-width: 900px)" type="{{imageType}}" />
23
+ <source data-srcset="{{largeImage | replace: '/assets/images', '/assets/images/webp' | replace: include.type, 'webp'}}" media="(max-width: 1400px)" type="image/webp" />
24
+ <source data-srcset="{{largeImage}}" media="(max-width: 1400px)" type="{{imageType}}" />
25
+ <!--[if IE 9]></video><![endif]-->
26
+ <img data-src="{{largeImage}}" class="lazyload" alt="{{include.alt}}" />
27
+ </picture>
28
+ {% else %}
29
+ <img data-src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" src="{{include.image}}"
30
+ alt="{{include.alt}}" class="lazyload"/>
31
+ {% endif %}
@@ -0,0 +1,11 @@
1
+ // Main css package file
2
+ @charset "UTF-8";
3
+ //Bootstrap Overrides
4
+ @import "app/overrides";
5
+ //Boostrap Includes
6
+ @import 'bootstrap';
7
+ // Linaro Jekyll Theme Includes
8
+ @import "core";
9
+ @import "blog";
10
+ // App Includes
11
+ @import "app/custom";
@@ -3,12 +3,17 @@
3
3
  @charset "UTF-8";
4
4
  //Bootstrap Overrides
5
5
  @import "app/overrides";
6
+
6
7
  //Boostrap Includes
7
- @import '_bootstrap';
8
+ @import 'bootstrap';
9
+ @import 'bootstrap/variables';
10
+
8
11
  // Linaro Jekyll Theme Includes
9
12
  @import 'core';
13
+
10
14
  // Additional Core Includes
11
15
  @import 'blog';
16
+
12
17
  // App Includes
13
18
  @import "app/custom";
14
19
  @import "app/blog";
@@ -4,10 +4,11 @@
4
4
  // App Overrides - Sass variables
5
5
  @import "app/overrides";
6
6
  //Boostrap Includes
7
- @import '_bootstrap';
7
+ @import 'bootstrap';
8
+ @import 'bootstrap/variables';
8
9
  // Core Theme
9
10
  @import 'core';
10
11
  //Additional Core includes
11
12
  @import "core/error";
12
13
  // App Includes
13
- @import "app/custom";
14
+ @import "app/custom";
@@ -0,0 +1,13 @@
1
+ ---
2
+ ---
3
+ @charset "UTF-8";
4
+ //Bootstrap Overrides
5
+ @import "app/overrides";
6
+ //Boostrap Includes
7
+ @import 'bootstrap';
8
+ @import 'bootstrap/variables';
9
+ // Linaro Jekyll Theme Includes
10
+ @import "core";
11
+ // App Includes
12
+ @import "app/search";
13
+ @import "app/custom";
data/assets/css/main.scss CHANGED
@@ -4,8 +4,9 @@
4
4
  //Bootstrap Overrides
5
5
  @import "app/overrides";
6
6
  //Boostrap Includes
7
- @import '_bootstrap';
7
+ @import 'bootstrap';
8
+ @import 'bootstrap/variables';
8
9
  // Linaro Jekyll Theme Includes
9
10
  @import "core";
10
11
  // App Includes
11
- @import "app/custom";
12
+ @import "app/custom";
@@ -3,6 +3,12 @@ $(window).click(function() {
3
3
  $(".dropdown-submenu.sub-menu > .dropdown-menu.sub-menu").hide();
4
4
  });
5
5
  $(document).ready(function () {
6
+ window.lazySizesConfig = window.lazySizesConfig || {};
7
+ window.lazySizesConfig.customMedia = {
8
+ '--small': '(max-width: 480px)',
9
+ '--medium': '(max-width: 900px)',
10
+ '--large': '(max-width: 1400px)',
11
+ };
6
12
  // Clipboard JS
7
13
  if($("div.highlight").length > 0){
8
14
  $('div.highlight').each(function (index) {
@@ -0,0 +1,8 @@
1
+ //= require vendor/jquery
2
+ //= require vendor/bootstrap
3
+ //= require vendor/cookieconsent
4
+ //= require vendor/lazysizes
5
+
6
+ //= require app/main
7
+ //= require app/search
8
+ //= require app/custom
@@ -9,4 +9,5 @@
9
9
 
10
10
  //= require app/main
11
11
  //= require app/search
12
- //= require app/custom
12
+ //= require app/tables
13
+ //= require app/custom
@@ -11,4 +11,4 @@
11
11
  //= require app/main
12
12
  //= require app/search
13
13
  //= require app/tables
14
- //= require app/custom
14
+ //= require app/custom
@@ -0,0 +1,14 @@
1
+ //= require vendor/jquery
2
+ //= require vendor/bootstrap
3
+ //= require vendor/cookieconsent
4
+ //= require vendor/lazysizes
5
+ //= require vendor/owl.carousel
6
+ //= require vendor/jquery.doubleScroll
7
+ //= require vendor/featherlight
8
+
9
+ //= require app/main
10
+ //= require app/tables
11
+ //= require app/search
12
+ //= require app/sticky-tab-bar
13
+ //= require app/custom
14
+ //= require app/home
@@ -2,12 +2,14 @@
2
2
  //= require vendor/bootstrap
3
3
  //= require vendor/cookieconsent
4
4
  //= require vendor/lazysizes
5
- //= require vendor/owl.carousel
6
5
  //= require vendor/ls.unveilhooks
7
6
  //= require vendor/jquery.doubleScroll
7
+ //= require vendor/owl.carousel
8
8
  //= require vendor/featherlight
9
9
 
10
10
  //= require app/main
11
+ //= require app/tables
11
12
  //= require app/search
13
+ //= require app/fly
12
14
  //= require app/sticky-tab-bar
13
- //= require app/custom
15
+ //= require app/custom
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jumbo-jekyll-theme
3
3
  version: !ruby/object:Gem::Version
4
- version: 4.7.8
4
+ version: '4.8'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kyle Kirkby
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-05-29 00:00:00.000000000 Z
11
+ date: 2019-06-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: jekyll
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - "~>"
18
18
  - !ruby/object:Gem::Version
19
- version: 3.7.4
19
+ version: 3.7.3
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
- version: 3.7.4
26
+ version: 3.7.3
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: jekyll-seo-tag
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -38,6 +38,20 @@ dependencies:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
40
  version: '2.2'
41
+ - !ruby/object:Gem::Dependency
42
+ name: jekyll-picture-tag-latest
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: 1.3.1
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: 1.3.1
41
55
  - !ruby/object:Gem::Dependency
42
56
  name: jekyll-sitemap
43
57
  requirement: !ruby/object:Gem::Requirement
@@ -66,6 +80,20 @@ dependencies:
66
80
  - - '='
67
81
  - !ruby/object:Gem::Version
68
82
  version: '0.2'
83
+ - !ruby/object:Gem::Dependency
84
+ name: bootstrap-sass
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: 3.4.1
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: 3.4.1
69
97
  - !ruby/object:Gem::Dependency
70
98
  name: jekyll-redirect-from
71
99
  requirement: !ruby/object:Gem::Requirement
@@ -199,7 +227,7 @@ dependencies:
199
227
  - !ruby/object:Gem::Version
200
228
  version: '1.1'
201
229
  - !ruby/object:Gem::Dependency
202
- name: jekyll-responsive-image
230
+ name: jekyll-last-modified-at
203
231
  requirement: !ruby/object:Gem::Requirement
204
232
  requirements:
205
233
  - - ">="
@@ -274,28 +302,28 @@ dependencies:
274
302
  requirements:
275
303
  - - "~>"
276
304
  - !ruby/object:Gem::Version
277
- version: 1.9.24
305
+ version: 1.9.6
278
306
  type: :runtime
279
307
  prerelease: false
280
308
  version_requirements: !ruby/object:Gem::Requirement
281
309
  requirements:
282
310
  - - "~>"
283
311
  - !ruby/object:Gem::Version
284
- version: 1.9.24
312
+ version: 1.9.6
285
313
  - !ruby/object:Gem::Dependency
286
314
  name: rack
287
315
  requirement: !ruby/object:Gem::Requirement
288
316
  requirements:
289
- - - ">="
317
+ - - ">"
290
318
  - !ruby/object:Gem::Version
291
- version: 1.6.11
319
+ version: '0'
292
320
  type: :runtime
293
321
  prerelease: false
294
322
  version_requirements: !ruby/object:Gem::Requirement
295
323
  requirements:
296
- - - ">="
324
+ - - ">"
297
325
  - !ruby/object:Gem::Version
298
- version: 1.6.11
326
+ version: '0'
299
327
  - !ruby/object:Gem::Dependency
300
328
  name: bundler
301
329
  requirement: !ruby/object:Gem::Requirement
@@ -314,16 +342,16 @@ dependencies:
314
342
  name: rake
315
343
  requirement: !ruby/object:Gem::Requirement
316
344
  requirements:
317
- - - "~>"
345
+ - - ">="
318
346
  - !ruby/object:Gem::Version
319
- version: '10.0'
347
+ version: '0'
320
348
  type: :development
321
349
  prerelease: false
322
350
  version_requirements: !ruby/object:Gem::Requirement
323
351
  requirements:
324
- - - "~>"
352
+ - - ">="
325
353
  - !ruby/object:Gem::Version
326
- version: '10.0'
354
+ version: '0'
327
355
  description:
328
356
  email:
329
357
  - kyle.kirkby@linaro.org
@@ -336,6 +364,7 @@ files:
336
364
  - _config.yml
337
365
  - _data/footer.yml
338
366
  - _data/nav.yml
367
+ - _data/picture.yml
339
368
  - _data/settings.yml
340
369
  - _data/sidebar-nav.yml
341
370
  - _data/sticky-tab-bar.yml
@@ -370,8 +399,7 @@ files:
370
399
  - _includes/sidebar.html
371
400
  - _includes/social-media-icons.html
372
401
  - _includes/sticky-tab-bar.html
373
- - _includes/thumb.html
374
- - _includes/thumbnail_image.html
402
+ - _includes/thumb-image.html
375
403
  - _includes/universal-nav.html
376
404
  - _includes/youtube.html
377
405
  - _layouts/author.html
@@ -390,6 +418,7 @@ files:
390
418
  - _sass/_bootstrap-mincer.scss
391
419
  - _sass/_bootstrap-sprockets.scss
392
420
  - _sass/_bootstrap.scss
421
+ - _sass/app-package.scss
393
422
  - _sass/app/blog.scss
394
423
  - _sass/app/contact.scss
395
424
  - _sass/app/custom.scss
@@ -500,9 +529,9 @@ files:
500
529
  - _sass/core/universal-nav.scss
501
530
  - _sass/core/youtube-lazy.scss
502
531
  - _sass/core/youtube.scss
503
- - _sass/home.scss
504
532
  - assets/css/main-blog.scss
505
533
  - assets/css/main-error.scss
534
+ - assets/css/main-search.scss
506
535
  - assets/css/main.scss
507
536
  - assets/fonts/fontawesome-webfont.eot
508
537
  - assets/fonts/fontawesome-webfont.svg
@@ -540,7 +569,6 @@ files:
540
569
  - assets/images/social-media-image.png
541
570
  - assets/js/app/blog-comments.js
542
571
  - assets/js/app/custom.js
543
- - assets/js/app/facebook.js
544
572
  - assets/js/app/fly.js
545
573
  - assets/js/app/main.js
546
574
  - assets/js/app/scroll-to-anchors.js
@@ -548,8 +576,10 @@ files:
548
576
  - assets/js/app/sticky-tab-bar.js
549
577
  - assets/js/app/tables.js
550
578
  - assets/js/app/youtube-lazy.js
579
+ - assets/js/pacakge-search.js
551
580
  - assets/js/package-blog.js
552
581
  - assets/js/package-extended.js
582
+ - assets/js/package-home.js
553
583
  - assets/js/package-main.js
554
584
  - assets/js/vendor/bootstrap-multiselect.js
555
585
  - assets/js/vendor/bootstrap.js
data/_includes/thumb.html DELETED
@@ -1,2 +0,0 @@
1
- <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/{{resized[0].path}}"
2
- class="img-responsive lazyload">
@@ -1,10 +0,0 @@
1
- {% comment %}
2
- This is a template for the jekyll-responsive-image plugin.
3
- This will generate a picture element
4
- {% endcomment %}
5
- <picture>
6
- {% for i in resized %}
7
- <source media="(max-width: {{ i.width }}px)" data-srcset="/{{ i.path }}">
8
- {% endfor %}
9
- <img src="data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==" data-src="/{{ path }}" class="img-responsive lazyload">
10
- </picture>
data/_sass/home.scss DELETED
@@ -1,2 +0,0 @@
1
- /* Home Sass Partials */
2
- @import 'core/homepage';
@@ -1,8 +0,0 @@
1
- <!-- <div id="fb-root"></div>
2
- <script>(function(d, s, id) {
3
- var js, fjs = d.getElementsByTagName(s)[0];
4
- if (d.getElementById(id)) return;
5
- js = d.createElement(s); js.id = id;
6
- js.src = "//connect.facebook.net/en_GB/sdk.js#xfbml=1&version=v2.9&appId=155006367915796";
7
- fjs.parentNode.insertBefore(js, fjs);
8
- }(document, 'script', 'facebook-jssdk'));</script> -->