Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

New helper next-vendors #1105

Merged
merged 4 commits into from
Aug 17, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 9 additions & 9 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1047,7 +1047,7 @@ vendors:
# pjax: //cdn.jsdelivr.net/gh/theme-next/theme-next-pjax@0/pjax.min.js
pjax:

# Internal version: 2.1.5 & 3.5.7
# FancyBox
# Example:
# fancybox: //cdn.jsdelivr.net/gh/fancyapps/fancybox@3/dist/jquery.fancybox.min.js
# fancybox: //cdnjs.cloudflare.com/ajax/libs/fancybox/3.5.7/jquery.fancybox.min.js
Expand All @@ -1056,24 +1056,24 @@ vendors:
fancybox:
fancybox_css:

# Internal version: 1.0.4
# Medium-zoom
# Example:
# mediumzoom: //cdn.jsdelivr.net/npm/medium-zoom@1/dist/medium-zoom.min.js
mediumzoom:

# Internal version: 1.10.0
# Lazyload
# Example:
# lazyload: //cdn.jsdelivr.net/npm/lozad@1/dist/lozad.min.js
# lazyload: //cdnjs.cloudflare.com/ajax/libs/lozad.js/1.9.0/lozad.min.js
lazyload:

# Internal version: 4.0.7
# Pangu
# Example:
# pangu: //cdn.jsdelivr.net/npm/pangu@4/dist/browser/pangu.min.js
# pangu: //cdnjs.cloudflare.com/ajax/libs/pangu/4.0.7/pangu.min.js
pangu:

# Internal version: 1.0.0
# Quicklink
# Example:
# quicklink: //cdn.jsdelivr.net/npm/quicklink@1/dist/quicklink.umd.js
quicklink:
Expand All @@ -1090,13 +1090,13 @@ vendors:
disqusjs_js:
disqusjs_css:

# valine
# Valine
# Example:
# valine: //cdn.jsdelivr.net/npm/valine@1/dist/Valine.min.js
# valine: //cdnjs.cloudflare.com/ajax/libs/valine/1.3.4/Valine.min.js
valine:

# gitalk
# Gitalk
# Example:
# gitalk_js: //cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.min.js
# gitalk_css: //cdn.jsdelivr.net/npm/gitalk@1/dist/gitalk.css
Expand All @@ -1117,9 +1117,9 @@ vendors:
needmoreshare2_js:
needmoreshare2_css:

# Internal version: 2.10.4
# Algolia Search
# Example:
# algolia_instant_js: //cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.js
# algolia_instant_js: //cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.js
# algolia_instant_css: //cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.css
algolia_instant_js:
algolia_instant_css:
Expand Down
10 changes: 5 additions & 5 deletions layout/_partials/head/head.swig
Original file line number Diff line number Diff line change
Expand Up @@ -49,11 +49,11 @@

{{ next_font() }}

{%- set font_awesome_uri = theme.vendors.fontawesome | default(url_for(theme.vendors._internal + '/font-awesome/css/font-awesome.min.css?v=4.7.0')) %}
{%- set font_awesome_uri = theme.vendors.fontawesome | default(next_vendors('font-awesome/css/font-awesome.min.css?v=4.7.0')) %}
<link rel="stylesheet" href="{{ font_awesome_uri }}">

{%- if theme.fancybox %}
{%- set fancybox_css_uri = theme.vendors.fancybox_css | default(url_for(theme.vendors._internal + '/fancybox/source/jquery.fancybox.css')) %}
{%- set fancybox_css_uri = theme.vendors.fancybox_css | default(next_vendors('//cdn.jsdelivr.net/gh/fancyapps/fancybox@3/dist/jquery.fancybox.min.css')) %}
<link rel="stylesheet" href="{{ fancybox_css_uri }}">
{%- endif %}

Expand All @@ -63,13 +63,13 @@
{%- endif %}

{%- if theme.needmoreshare2.enable %}
{%- set needmoreshare2_css_uri = theme.vendors.needmoreshare2_css | default(url_for(theme.vendors._internal + '/needsharebutton/needsharebutton.css')) %}
{%- set needmoreshare2_css_uri = theme.vendors.needmoreshare2_css | default(next_vendors('needsharebutton/needsharebutton.css')) %}
<link rel="stylesheet" href="{{ needmoreshare2_css_uri }}">
{%- endif %}

{%- if theme.pace.enable %}
{%- set pace_css_uri = theme.vendors.pace_css | default(url_for(theme.vendors._internal + '/pace/pace-theme-' + theme.pace.theme + '.min.css?v=1.0.2')) %}
{%- set pace_js_uri = theme.vendors.pace | default(url_for(theme.vendors._internal + '/pace/pace.min.js?v=1.0.2')) %}
{%- set pace_css_uri = theme.vendors.pace_css | default(next_vendors('pace/pace-theme-' + theme.pace.theme + '.min.css?v=1.0.2')) %}
{%- set pace_js_uri = theme.vendors.pace | default(next_vendors('pace/pace.min.js?v=1.0.2')) %}
<link rel="stylesheet" href="{{ pace_css_uri }}">
<script src="{{ pace_js_uri }}"></script>
{%- endif %}
Expand Down
2 changes: 1 addition & 1 deletion layout/_partials/share/needsharebutton.swig
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
</div>
{%- endif %}

{%- set needmoreshare2_js_uri = theme.vendors.needmoreshare2_js | default(url_for(theme.vendors._internal + '/needsharebutton/needsharebutton.js')) %}
{%- set needmoreshare2_js_uri = theme.vendors.needmoreshare2_js | default(next_vendors('needsharebutton/needsharebutton.js')) %}
<script src="{{ needmoreshare2_js_uri }}"></script>
<script>
{%- if theme.needmoreshare2.postbottom.enable %}
Expand Down
8 changes: 4 additions & 4 deletions layout/_scripts/three.swig
Original file line number Diff line number Diff line change
@@ -1,16 +1,16 @@
{%- if theme.three.enable and theme.three.delay %}
{%- set three_uri = theme.vendors.three | default(url_for(theme.vendors._internal + '/three/three.min.js')) %}
{%- set three_uri = theme.vendors.three | default(next_vendors('three/three.min.js')) %}

{%- if theme.three.three_waves %}
{%- set waves_uri = theme.vendors.three_waves | default(url_for(theme.vendors._internal + '/three/three-waves.min.js')) %}
{%- set waves_uri = theme.vendors.three_waves | default(next_vendors('three/three-waves.min.js')) %}
{%- endif %}

{%- if theme.three.canvas_lines %}
{%- set lines_uri = theme.vendors.canvas_lines | default(url_for(theme.vendors._internal + '/three/canvas_lines.min.js')) %}
{%- set lines_uri = theme.vendors.canvas_lines | default(next_vendors('three/canvas_lines.min.js')) %}
{%- endif %}

{%- if theme.three.canvas_sphere %}
{%- set sphere_uri = theme.vendors.canvas_sphere | default(url_for(theme.vendors._internal + '/three/canvas_sphere.min.js')) %}
{%- set sphere_uri = theme.vendors.canvas_sphere | default(next_vendors('three/canvas_sphere.min.js')) %}
{%- endif %}

<script>
Expand Down
18 changes: 9 additions & 9 deletions layout/_scripts/vendors.swig
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,19 @@
{%- endif %}

{%- if theme.fancybox %}
{%- set js_vendors.fancybox = 'fancybox/source/jquery.fancybox.pack.js' %}
{%- set js_vendors.fancybox = '//cdn.jsdelivr.net/gh/fancyapps/fancybox@3/dist/jquery.fancybox.min.js' %}
{%- endif %}

{%- if theme.mediumzoom %}
{%- set js_vendors.mediumzoom = 'mediumzoom/medium-zoom.min.js' %}
{%- set js_vendors.mediumzoom = '//cdn.jsdelivr.net/npm/medium-zoom@1/dist/medium-zoom.min.js' %}
{%- endif %}

{%- if theme.lazyload %}
{%- set js_vendors.lazyload = 'lazyload/lozad.min.js?v=1.10.0' %}
{%- set js_vendors.lazyload = '//cdn.jsdelivr.net/npm/lozad@1/dist/lozad.min.js' %}
{%- endif %}

{%- if theme.pangu %}
{%- set js_vendors.pangu = 'pangu/dist/pangu.min.js?v=4.0.7' %}
{%- set js_vendors.pangu = '//cdn.jsdelivr.net/npm/pangu@4/dist/browser/pangu.min.js' %}
{%- endif %}

{%- if theme.motion.enable %}
Expand All @@ -44,24 +44,24 @@

{%- if theme.canvas_nest.enable %}
{%- if theme.canvas_nest.onmobile %}
{%- set canvas_nest_uri = theme.vendors.canvas_nest | default(url_for(theme.vendors._internal + '/canvas-nest/canvas-nest.min.js')) %}
{%- set canvas_nest_uri = theme.vendors.canvas_nest | default(next_vendors('canvas-nest/canvas-nest.min.js')) %}
{% else %}
{%- set canvas_nest_uri = theme.vendors.canvas_nest_nomobile | default(url_for(theme.vendors._internal + '/canvas-nest/canvas-nest-nomobile.min.js')) %}
{%- set canvas_nest_uri = theme.vendors.canvas_nest_nomobile | default(next_vendors('canvas-nest/canvas-nest-nomobile.min.js')) %}
{%- endif %}
<script color='{{ theme.canvas_nest.color }}' opacity='{{ theme.canvas_nest.opacity }}' zIndex='{{ theme.canvas_nest.zIndex }}' count='{{ theme.canvas_nest.count }}' src="{{ canvas_nest_uri }}"></script>
{%- endif %}

{%- if theme.canvas_ribbon.enable %}
{%- set canvas_ribbon_uri = theme.vendors.canvas_ribbon | default(url_for(theme.vendors._internal + '/canvas-ribbon/canvas-ribbon.js')) %}
{%- set canvas_ribbon_uri = theme.vendors.canvas_ribbon | default(next_vendors('canvas-ribbon/canvas-ribbon.js')) %}
<script size="{{ theme.canvas_ribbon.size }}" alpha="{{ theme.canvas_ribbon.alpha }}" zIndex="{{theme.canvas_ribbon.zIndex }}" src="{{ canvas_ribbon_uri }}"></script>
{%- endif %}

{%- for name, internal in js_vendors %}
{%- set internal_script = url_for(theme.vendors._internal + '/' + internal) %}
{%- set internal_script = next_vendors(internal) %}
<script src="{{ theme.vendors[name] | default(internal_script) }}"></script>
{%- endfor %}

{%- for name, internal in js_defer_vendors %}
{%- set internal_script = url_for(theme.vendors._internal + '/' + internal) %}
{%- set internal_script = next_vendors(internal) %}
<script defer src="{{ theme.vendors[name] | default(internal_script) }}"></script>
{%- endfor %}
2 changes: 1 addition & 1 deletion layout/_third-party/bookmark.swig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{%- if theme.bookmark.enable %}
{%- set bookmark_uri = theme.vendors.bookmark | default(url_for(theme.vendors._internal + '/bookmark/bookmark.min.js?v=1.0')) %}
{%- set bookmark_uri = theme.vendors.bookmark | default(next_vendors('bookmark/bookmark.min.js?v=1.0')) %}
<script src="{{ bookmark_uri }}"></script>
<script{{ pjax }}>
if (CONFIG.page.isPost) {
Expand Down
2 changes: 1 addition & 1 deletion layout/_third-party/quicklink.swig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{%- if theme.quicklink.enable %}
{%- set quicklink_uri = theme.vendors.quicklink | default(url_for(theme.vendors._internal + '/quicklink/quicklink.umd.js')) %}
{%- set quicklink_uri = theme.vendors.quicklink | default(next_vendors('//cdn.jsdelivr.net/npm/quicklink@1/dist/quicklink.umd.js')) %}

{%- if is_home() %}
{%- if theme.quicklink.home %}
Expand Down
4 changes: 2 additions & 2 deletions layout/_third-party/search/algolia-search.swig
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{%- set algolia_instant_css_uri = theme.vendors.algolia_instant_css | default(url_for(theme.vendors._internal + '/algolia-instant-search/instantsearch.min.css')) %}
{%- set algolia_instant_js_uri = theme.vendors.algolia_instant_js | default(url_for(theme.vendors._internal + '/algolia-instant-search/instantsearch.min.js')) %}
{%- set algolia_instant_css_uri = theme.vendors.algolia_instant_css | default(next_vendors('//cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.css')) %}
{%- set algolia_instant_js_uri = theme.vendors.algolia_instant_js | default(next_vendors('//cdn.jsdelivr.net/npm/instantsearch.js@2/dist/instantsearch.min.js')) %}
<link rel="stylesheet" href="{{ algolia_instant_css_uri }}">
<script src="{{ algolia_instant_js_uri }}"></script>

Expand Down
9 changes: 9 additions & 0 deletions scripts/helpers/next-vendors.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/* global hexo */

'use strict';

hexo.extend.helper.register('next_vendors', function(url) {
if (url.startsWith('//')) return url;
let internal = hexo.theme.config.vendors._internal;
return this.url_for(`${internal}/${url}`);
});