jumbo-jekyll-theme 4.7.8 → 4.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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> -->