From 9e42b3fad1f2312430ec8abfe796c5df53cad924 Mon Sep 17 00:00:00 2001 From: elkan1788 Date: Sun, 21 Jul 2024 19:52:40 +0800 Subject: [PATCH] :zap: :fire: Update the multi cnd vendor service. --- assets/js/utils.js | 25 +++++++------ data/resources.yaml | 35 ++++++++++-------- exampleSite/config.yaml | 25 ++++--------- layouts/partials/_funs/get_res.html | 12 +++--- .../4.24.0/algoliasearch-lite.umd.min.js | 2 + .../katex/0.16.9/contrib/auto-render.min.js | 1 + .../fonts/woff-v2/MathJax_AMS-Regular.woff | Bin .../fonts/woff-v2/MathJax_Main-Bold.woff | Bin .../fonts/woff-v2/MathJax_Main-Regular.woff | Bin .../fonts/woff-v2/MathJax_Math-Italic.woff | Bin 0 -> 19360 bytes .../fonts/woff-v2/MathJax_Size1-Regular.woff | Bin .../fonts/woff-v2/MathJax_Size2-Regular.woff | Bin .../fonts/woff-v2/MathJax_Size3-Regular.woff | Bin .../fonts/woff-v2/MathJax_Size4-Regular.woff | Bin .../fonts/woff-v2/MathJax_Vector-Regular.woff | Bin 0 -> 1136 bytes .../chtml/fonts/woff-v2/MathJax_Zero.woff | Bin 16 files changed, 47 insertions(+), 53 deletions(-) create mode 100644 static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js create mode 100644 static/3rd/katex/0.16.9/contrib/auto-render.min.js rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_AMS-Regular.woff (100%) rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Main-Bold.woff (100%) rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Main-Regular.woff (100%) create mode 100644 static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Math-Italic.woff rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff (100%) rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff (100%) rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff (100%) rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff (100%) create mode 100644 static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff rename static/3rd/mathjax/3.2.2/{ => es5}/output/chtml/fonts/woff-v2/MathJax_Zero.woff (100%) diff --git a/assets/js/utils.js b/assets/js/utils.js index 8bc1494..0cdd6bf 100644 --- a/assets/js/utils.js +++ b/assets/js/utils.js @@ -241,26 +241,27 @@ NexT.utils = { }, getCDNResource: function (res) { - let { plugins, router } = NexT.CONFIG.vendor; + + let router = NexT.CONFIG.vendor.router; let { name, version, file, alias, alias_name } = res; - let npm_name = name; - if (alias_name) npm_name = alias_name; let res_src = ''; - + switch (router.type) { - case 'modern': - let cdnjs_name = alias || name; - let cdnjs_file = file.replace(/^(dist|lib|source|\/js|)\/(browser\/|)/, ''); - if (cdnjs_file.indexOf('min') == -1) { - cdnjs_file = cdnjs_file.replace(/\.js$/, '.min.js'); + case "modern": + if (alias_name) name = alias_name; + let alias_file = file.replace(/^(dist|lib|source|\/js|)\/(browser\/|)/, ''); + if (alias_file.indexOf('min') == -1) { + alias_file = alias_file.replace(/\.js$/, '.min.js'); } - res_src = `${router.url}/${cdnjs_name}/${version}/${cdnjs_file}` + res_src = `${router.url}/${name}/${version}/${alias_file}`; break; default: - res_src = `${router.url}/${npm_name}@${version}/${file}` + if (alias) name = alias; + res_src = `${router.url}/${name}@${version}/${file}`; + break; } - + return res_src; }, diff --git a/data/resources.yaml b/data/resources.yaml index 9e33f3a..c0aa4c7 100644 --- a/data/resources.yaml +++ b/data/resources.yaml @@ -63,10 +63,10 @@ js: # CSS 资源 # CSS Resources css: - - name: '@fortawesome/fontawesome-free' + - name: font-awesome version: 6.6.0 file: css/all.min.css - alias: font-awesome + alias: '@fortawesome/fontawesome-free' - name: animate.css version: 4.1.1 @@ -97,16 +97,16 @@ addthis: # Comment component waline: js: - name: '@waline/client' + name: waline version: 2.15.8 file: dist/waline.js - alias: waline + alias: "@waline/client" css: - name: '@waline/client' + name: waline version: 2.15.8 file: dist/waline.css - alias: waline + alias: "@waline/client" artalk: js: @@ -133,7 +133,7 @@ livere: algolia: name: algoliasearch version: 4.24.0 - file: dist/algoliasearch.umd.min.js + file: dist/algoliasearch-lite.umd.js instant: name: instantsearch.js @@ -146,22 +146,25 @@ plugins: js: name: mathjax version: 3.2.2 - file: es5/tex-mml-chtml.min.js + file: es5/tex-mml-chtml.js katex: js: - name: katex - version: 0.16.11 + alias_name: KaTeX + version: 0.16.9 file: dist/katex.min.js - name: auto-render - alias_name: katex - version: 0.16.11 + alias: katex + alias_name: KaTeX + version: 0.16.9 file: dist/contrib/auto-render.min.js css: name: katex - version: 0.16.11 + alias_name: KaTeX + version: 0.16.9 file: dist/katex.min.css # 画图渲染 @@ -174,13 +177,13 @@ plugins: waline: js: - name: pageview - alias_name: '@waline/client' + alias_name: waline version: 2.15.8 file: dist/pageview.js - alias: waline + alias: "@waline/client" - name: comment - alias_name: '@waline/client' + alias_name: waline version: 2.15.8 file: dist/comment.js - alias: waline \ No newline at end of file + alias: "@waline/client" \ No newline at end of file diff --git a/exampleSite/config.yaml b/exampleSite/config.yaml index 1b000f9..d3f6a87 100644 --- a/exampleSite/config.yaml +++ b/exampleSite/config.yaml @@ -388,7 +388,7 @@ params: footer: # 启动谷歌翻译功能 # Enable google translate in footer - translate: true + translate: false # 站点开始年份,默认为当下时间的年份 # Specify the year when the site was setup. # If not defined, current year will be used. @@ -1103,29 +1103,18 @@ params: # --------------------------------------------------------------- - # CDN 服务(暂时只支持 unpkg 和 cndjs) + # CDN 服务 # CDN Settings # --------------------------------------------------------------- - vendors: + vendors: # The CDN provider of NexT internal scripts. - # Available values: local | unpkg | cdnjs | qiniu | bootcdn | custom - # Warning: If you are using the latest master branch of NexT, please set `internal: local` + # Available values: local | cdn internal: local # The default CDN provider of third-party plugins. - # Available values: local | | cdnjs | unpkg | bootcdn | staticfile | 7ed | zstatic | zeyao | jsdelivr | custom - plugins: jsdelivr - # TODO + # Available values: local | cdnjs | unpkg | jsdelivr | staticfile | bootcdn | 7ed | zstatic | zeyao | custom + plugins: local # Custom CDN URL # For example: # custom_cdn_url: https://cdn.jsdelivr.net/npm/${npm_name}@${version}/${minified} - # custom_cdn_url: https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${cdnjs_file} - #custom_cdn_url: - - # TODO - # Assets - # Accelerate delivery of static files using a CDN - # The js option is only valid when vendors.internal is local. - css: css - js: js - images: imgs \ No newline at end of file + # custom_cdn_url: https://cdnjs.cloudflare.com/ajax/libs/${cdnjs_name}/${version}/${cdnjs_file} \ No newline at end of file diff --git a/layouts/partials/_funs/get_res.html b/layouts/partials/_funs/get_res.html index e87f502..7c64991 100644 --- a/layouts/partials/_funs/get_res.html +++ b/layouts/partials/_funs/get_res.html @@ -3,17 +3,15 @@ {{ $fmt := "%s/%s@%s/%s" }} {{ $npm := .res.name }} -{{ with .res.alias2 }} - {{ $npm = . }} -{{ end }} {{ $file := .res.file }} -{{ if ne .router.type "nodejs" }} - {{ with .res.alias }} - {{ $npm = . }} - {{ end }} +{{ if ne .router.type "nodejs" }} {{ $file = replaceRE `(dist|lib|source\/js)\/` "" .res.file }} {{ $fmt = "%s/%s/%s/%s" }} +{{ else }} + {{ with .res.alias }} + {{ $npm = . }} + {{ end }} {{ end }} {{ $pluginRes := printf $fmt .router.url $npm .res.version $file }} diff --git a/static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js b/static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js new file mode 100644 index 0000000..c2e5115 --- /dev/null +++ b/static/3rd/algoliasearch/4.24.0/algoliasearch-lite.umd.min.js @@ -0,0 +1,2 @@ +/*! algoliasearch-lite.umd.js | 4.24.0 | © Algolia, inc. | https://github.com/algolia/algoliasearch-client-javascript */ +!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).algoliasearch=t()}(this,(function(){"use strict";function e(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function t(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,n)}return r}function r(r){for(var n=1;n=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(n=0;n=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function o(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){if(!(Symbol.iterator in Object(e)||"[object Arguments]"===Object.prototype.toString.call(e)))return;var r=[],n=!0,o=!1,a=void 0;try{for(var u,i=e[Symbol.iterator]();!(n=(u=i.next()).done)&&(r.push(u.value),!t||r.length!==t);n=!0);}catch(e){o=!0,a=e}finally{try{n||null==i.return||i.return()}finally{if(o)throw a}}return r}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance")}()}function a(e){return function(e){if(Array.isArray(e)){for(var t=0,r=new Array(e.length);t2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return Promise.resolve().then((function(){i();var t=JSON.stringify(e);return a()[t]})).then((function(e){return Promise.all([e?e.value:t(),void 0!==e])})).then((function(e){var t=o(e,2),n=t[0],a=t[1];return Promise.all([n,a||r.miss(n)])})).then((function(e){return o(e,1)[0]}))},set:function(e,t){return Promise.resolve().then((function(){var o=a();return o[JSON.stringify(e)]={timestamp:(new Date).getTime(),value:t},n().setItem(r,JSON.stringify(o)),t}))},delete:function(e){return Promise.resolve().then((function(){var t=a();delete t[JSON.stringify(e)],n().setItem(r,JSON.stringify(t))}))},clear:function(){return Promise.resolve().then((function(){n().removeItem(r)}))}}}function i(e){var t=a(e.caches),r=t.shift();return void 0===r?{get:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},n=t();return n.then((function(e){return Promise.all([e,r.miss(e)])})).then((function(e){return o(e,1)[0]}))},set:function(e,t){return Promise.resolve(t)},delete:function(e){return Promise.resolve()},clear:function(){return Promise.resolve()}}:{get:function(e,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}};return r.get(e,n,o).catch((function(){return i({caches:t}).get(e,n,o)}))},set:function(e,n){return r.set(e,n).catch((function(){return i({caches:t}).set(e,n)}))},delete:function(e){return r.delete(e).catch((function(){return i({caches:t}).delete(e)}))},clear:function(){return r.clear().catch((function(){return i({caches:t}).clear()}))}}}function s(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{serializable:!0},t={};return{get:function(r,n){var o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{miss:function(){return Promise.resolve()}},a=JSON.stringify(r);if(a in t)return Promise.resolve(e.serializable?JSON.parse(t[a]):t[a]);var u=n(),i=o&&o.miss||function(){return Promise.resolve()};return u.then((function(e){return i(e)})).then((function(){return u}))},set:function(r,n){return t[JSON.stringify(r)]=e.serializable?JSON.stringify(n):n,Promise.resolve(n)},delete:function(e){return delete t[JSON.stringify(e)],Promise.resolve()},clear:function(){return t={},Promise.resolve()}}}function c(e){for(var t=e.length-1;t>0;t--){var r=Math.floor(Math.random()*(t+1)),n=e[t];e[t]=e[r],e[r]=n}return e}function l(e,t){return t?(Object.keys(t).forEach((function(r){e[r]=t[r](e)})),e):e}function f(e){for(var t=arguments.length,r=new Array(t>1?t-1:0),n=1;n0?n:void 0,timeout:r.timeout||t,headers:r.headers||{},queryParameters:r.queryParameters||{},cacheable:r.cacheable}}var d={Read:1,Write:2,Any:3},p=1,v=2,g=3;function y(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:p;return r(r({},e),{},{status:t,lastUpdate:Date.now()})}function b(e){return"string"==typeof e?{protocol:"https",url:e,accept:d.Any}:{protocol:e.protocol||"https",url:e.url,accept:e.accept||d.Any}}var O="GET",P="POST";function q(e,t){return Promise.all(t.map((function(t){return e.get(t,(function(){return Promise.resolve(y(t))}))}))).then((function(e){var r=e.filter((function(e){return function(e){return e.status===p||Date.now()-e.lastUpdate>12e4}(e)})),n=e.filter((function(e){return function(e){return e.status===g&&Date.now()-e.lastUpdate<=12e4}(e)})),o=[].concat(a(r),a(n));return{getTimeout:function(e,t){return(0===n.length&&0===e?1:n.length+3+e)*t},statelessHosts:o.length>0?o.map((function(e){return b(e)})):t}}))}function j(e,t,n,o){var u=[],i=function(e,t){if(e.method===O||void 0===e.data&&void 0===t.data)return;var n=Array.isArray(e.data)?e.data:r(r({},e.data),t.data);return JSON.stringify(n)}(n,o),s=function(e,t){var n=r(r({},e.headers),t.headers),o={};return Object.keys(n).forEach((function(e){var t=n[e];o[e.toLowerCase()]=t})),o}(e,o),c=n.method,l=n.method!==O?{}:r(r({},n.data),o.data),f=r(r(r({"x-algolia-agent":e.userAgent.value},e.queryParameters),l),o.queryParameters),h=0,m=function t(r,a){var l=r.pop();if(void 0===l)throw{name:"RetryError",message:"Unreachable hosts - your application id may be incorrect. If the error persists, please reach out to the Algolia Support team: https://alg.li/support .",transporterStackTrace:A(u)};var m={data:i,headers:s,method:c,url:S(l,n.path,f),connectTimeout:a(h,e.timeouts.connect),responseTimeout:a(h,o.timeout)},d=function(e){var t={request:m,response:e,host:l,triesLeft:r.length};return u.push(t),t},p={onSuccess:function(e){return function(e){try{return JSON.parse(e.content)}catch(t){throw function(e,t){return{name:"DeserializationError",message:e,response:t}}(t.message,e)}}(e)},onRetry:function(n){var o=d(n);return n.isTimedOut&&h++,Promise.all([e.logger.info("Retryable failure",x(o)),e.hostsCache.set(l,y(l,n.isTimedOut?g:v))]).then((function(){return t(r,a)}))},onFail:function(e){throw d(e),function(e,t){var r=e.content,n=e.status,o=r;try{o=JSON.parse(r).message}catch(e){}return function(e,t,r){return{name:"ApiError",message:e,status:t,transporterStackTrace:r}}(o,n,t)}(e,A(u))}};return e.requester.send(m).then((function(e){return function(e,t){return function(e){var t=e.status;return e.isTimedOut||function(e){var t=e.isTimedOut,r=e.status;return!t&&0==~~r}(e)||2!=~~(t/100)&&4!=~~(t/100)}(e)?t.onRetry(e):2==~~(e.status/100)?t.onSuccess(e):t.onFail(e)}(e,p)}))};return q(e.hostsCache,t).then((function(e){return m(a(e.statelessHosts).reverse(),e.getTimeout)}))}function w(e){var t={value:"Algolia for JavaScript (".concat(e,")"),add:function(e){var r="; ".concat(e.segment).concat(void 0!==e.version?" (".concat(e.version,")"):"");return-1===t.value.indexOf(r)&&(t.value="".concat(t.value).concat(r)),t}};return t}function S(e,t,r){var n=T(r),o="".concat(e.protocol,"://").concat(e.url,"/").concat("/"===t.charAt(0)?t.substr(1):t);return n.length&&(o+="?".concat(n)),o}function T(e){return Object.keys(e).map((function(t){return f("%s=%s",t,(r=e[t],"[object Object]"===Object.prototype.toString.call(r)||"[object Array]"===Object.prototype.toString.call(r)?JSON.stringify(e[t]):e[t]));var r})).join("&")}function A(e){return e.map((function(e){return x(e)}))}function x(e){var t=e.request.headers["x-algolia-api-key"]?{"x-algolia-api-key":"*****"}:{};return r(r({},e),{},{request:r(r({},e.request),{},{headers:r(r({},e.request.headers),t)})})}var N=function(e){var t=e.appId,n=function(e,t,r){var n={"x-algolia-api-key":r,"x-algolia-application-id":t};return{headers:function(){return e===h.WithinHeaders?n:{}},queryParameters:function(){return e===h.WithinQueryParameters?n:{}}}}(void 0!==e.authMode?e.authMode:h.WithinHeaders,t,e.apiKey),a=function(e){var t=e.hostsCache,r=e.logger,n=e.requester,a=e.requestsCache,u=e.responsesCache,i=e.timeouts,s=e.userAgent,c=e.hosts,l=e.queryParameters,f={hostsCache:t,logger:r,requester:n,requestsCache:a,responsesCache:u,timeouts:i,userAgent:s,headers:e.headers,queryParameters:l,hosts:c.map((function(e){return b(e)})),read:function(e,t){var r=m(t,f.timeouts.read),n=function(){return j(f,f.hosts.filter((function(e){return 0!=(e.accept&d.Read)})),e,r)};if(!0!==(void 0!==r.cacheable?r.cacheable:e.cacheable))return n();var a={request:e,mappedRequestOptions:r,transporter:{queryParameters:f.queryParameters,headers:f.headers}};return f.responsesCache.get(a,(function(){return f.requestsCache.get(a,(function(){return f.requestsCache.set(a,n()).then((function(e){return Promise.all([f.requestsCache.delete(a),e])}),(function(e){return Promise.all([f.requestsCache.delete(a),Promise.reject(e)])})).then((function(e){var t=o(e,2);t[0];return t[1]}))}))}),{miss:function(e){return f.responsesCache.set(a,e)}})},write:function(e,t){return j(f,f.hosts.filter((function(e){return 0!=(e.accept&d.Write)})),e,m(t,f.timeouts.write))}};return f}(r(r({hosts:[{url:"".concat(t,"-dsn.algolia.net"),accept:d.Read},{url:"".concat(t,".algolia.net"),accept:d.Write}].concat(c([{url:"".concat(t,"-1.algolianet.com")},{url:"".concat(t,"-2.algolianet.com")},{url:"".concat(t,"-3.algolianet.com")}]))},e),{},{headers:r(r(r({},n.headers()),{"content-type":"application/x-www-form-urlencoded"}),e.headers),queryParameters:r(r({},n.queryParameters()),e.queryParameters)}));return l({transporter:a,appId:t,addAlgoliaAgent:function(e,t){a.userAgent.add({segment:e,version:t})},clearCache:function(){return Promise.all([a.requestsCache.clear(),a.responsesCache.clear()]).then((function(){}))}},e.methods)},C=function(e){return function(t,r){return t.method===O?e.transporter.read(t,r):e.transporter.write(t,r)}},E=function(e){return function(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},n={transporter:e.transporter,appId:e.appId,indexName:t};return l(n,r.methods)}},J=function(e){return function(t,n){var o=t.map((function(e){return r(r({},e),{},{params:T(e.params||{})})}));return e.transporter.read({method:P,path:"1/indexes/*/queries",data:{requests:o},cacheable:!0},n)}},k=function(e){return function(t,o){return Promise.all(t.map((function(t){var a=t.params,u=a.facetName,i=a.facetQuery,s=n(a,["facetName","facetQuery"]);return E(e)(t.indexName,{methods:{searchForFacetValues:F}}).searchForFacetValues(u,i,r(r({},o),s))})))}},I=function(e){return function(t,r,n){return e.transporter.read({method:P,path:f("1/answers/%s/prediction",e.indexName),data:{query:t,queryLanguages:r},cacheable:!0},n)}},R=function(e){return function(t,r){return e.transporter.read({method:P,path:f("1/indexes/%s/query",e.indexName),data:{query:t},cacheable:!0},r)}},F=function(e){return function(t,r,n){return e.transporter.read({method:P,path:f("1/indexes/%s/facets/%s/query",e.indexName,t),data:{facetQuery:r},cacheable:!0},n)}},D=1,W=2,H=3;var Q=function(e){return function(t,n){var o=t.map((function(e){return r(r({},e),{},{threshold:e.threshold||0})}));return e.transporter.read({method:P,path:"1/indexes/*/recommendations",data:{requests:o},cacheable:!0},n)}};function L(e,t,n){var o,a={appId:e,apiKey:t,timeouts:{connect:1,read:2,write:30},requester:{send:function(e){return new Promise((function(t){var r=new XMLHttpRequest;r.open(e.method,e.url,!0),Object.keys(e.headers).forEach((function(t){return r.setRequestHeader(t,e.headers[t])}));var n,o=function(e,n){return setTimeout((function(){r.abort(),t({status:0,content:n,isTimedOut:!0})}),1e3*e)},a=o(e.connectTimeout,"Connection timeout");r.onreadystatechange=function(){r.readyState>r.OPENED&&void 0===n&&(clearTimeout(a),n=o(e.responseTimeout,"Socket timeout"))},r.onerror=function(){0===r.status&&(clearTimeout(a),clearTimeout(n),t({content:r.responseText||"Network request failed",status:r.status,isTimedOut:!1}))},r.onload=function(){clearTimeout(a),clearTimeout(n),t({content:r.responseText,status:r.status,isTimedOut:!1})},r.send(e.data)}))}},logger:(o=H,{debug:function(e,t){return D>=o&&console.debug(e,t),Promise.resolve()},info:function(e,t){return W>=o&&console.info(e,t),Promise.resolve()},error:function(e,t){return console.error(e,t),Promise.resolve()}}),responsesCache:s(),requestsCache:s({serializable:!1}),hostsCache:i({caches:[u({key:"".concat("4.24.0","-").concat(e)}),s()]}),userAgent:w("4.24.0").add({segment:"Browser",version:"lite"}),authMode:h.WithinQueryParameters};return N(r(r(r({},a),n),{},{methods:{search:J,searchForFacetValues:k,multipleQueries:J,multipleSearchForFacetValues:k,customRequest:C,initIndex:function(e){return function(t){return E(e)(t,{methods:{search:R,searchForFacetValues:F,findAnswers:I}})}},getRecommendations:Q}}))}return L.version="4.24.0",L})); diff --git a/static/3rd/katex/0.16.9/contrib/auto-render.min.js b/static/3rd/katex/0.16.9/contrib/auto-render.min.js new file mode 100644 index 0000000..74f07c2 --- /dev/null +++ b/static/3rd/katex/0.16.9/contrib/auto-render.min.js @@ -0,0 +1 @@ +!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("katex")):"function"==typeof define&&define.amd?define(["katex"],t):"object"==typeof exports?exports.renderMathInElement=t(require("katex")):e.renderMathInElement=t(e.katex)}("undefined"!=typeof self?self:this,(function(e){return function(){"use strict";var t={771:function(t){t.exports=e}},r={};function n(e){var i=r[e];if(void 0!==i)return i.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,n),a.exports}n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,{a:t}),t},n.d=function(e,t){for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)};var i={};return function(){n.d(i,{default:function(){return s}});var e=n(771),t=n.n(e),r=function(e,t,r){for(var n=r,i=0,a=e.length;n0&&(i.push({type:"text",data:e.slice(0,n)}),e=e.slice(n));var l=t.findIndex((function(t){return e.startsWith(t.left)}));if(-1===(n=r(t[l].right,e,t[l].left.length)))break;var d=e.slice(0,n+t[l].right.length),s=a.test(d)?d:e.slice(t[l].left.length,n);i.push({type:"math",data:s,rawData:d,display:t[l].display}),e=e.slice(n+t[l].right.length)}return""!==e&&i.push({type:"text",data:e}),i},l=function(e,r){var n=o(e,r.delimiters);if(1===n.length&&"text"===n[0].type)return null;for(var i=document.createDocumentFragment(),a=0;aUo%#Gu`fr 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 z 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 literal 0 HcmV?d00001 diff --git a/static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff b/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff similarity index 100% rename from static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff rename to static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size1-Regular.woff diff --git a/static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff b/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff similarity index 100% rename from static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff rename to static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size2-Regular.woff diff --git a/static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff b/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff similarity index 100% rename from static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff rename to static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size3-Regular.woff diff --git a/static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff b/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff similarity index 100% rename from static/3rd/mathjax/3.2.2/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff rename to static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Size4-Regular.woff diff --git a/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff b/static/3rd/mathjax/3.2.2/es5/output/chtml/fonts/woff-v2/MathJax_Vector-Regular.woff new file mode 100644 index 0000000000000000000000000000000000000000..9dcf84c4b62b5ce5b8f1953d5482d8431aff3eb1 GIT binary patch literal 1136 zcmXT-cXRU(3GruOU@2hWW&i@V1`vr2IJ>ziFfcG{FfcH30>SuIf z;8n56NKH%uvN?cara)}QW4U)`22c#2Q9U$}AK$uC8fgv}s z0%#s%0!)m7DS#m_F*g+`wgrgQfOZ-FV-dVpkY8K^^oIaYofr@+{BL70uDF$)kdlzV z@Myi;8u>>*bN3k)81HB3GKiVG$5+Tn-sZHz=_7|K=Drk}aQff@79m!K5FPGKK+RBn zR$uQoH8y_aW)?7rOHW8~VC`W@bzr^%RKNfX1}2EQ#6O3Av^Gv{Y+Tu$$PlvrRa_RA2!^OAo`D9^TDh zJEupOJmUJ!C6R&xvB3-Uz z7yHBem-LRYZ$7}hZ$|Z%|Fdr%)~=gTYtt$I%&u)wirki}lyB~o5(pdyioK${Eu)~*YgM&jv$MG9tw#FBH>+aBbzi=1IeK->mXsC zkdW4pAj#&&Ca{6=lf=OqF*a6(vrH`x`yMU%|6lRR-kKF&Y;I<362(WD7=A0Wr-I@$ zjiLGfSspisu8EAi3=A5fj61<*r6eRKC8VT?eD~Ek`N3;V2fw$k-bwvSyk5TgXFYY8 zJXijEkp4sQ@DJx{FWY54^A}E&lRGAApZ4d(Kgr|2?oO-!_I;|;eOVUC2norZzI&8} zy1PD|?l!t?>^0{zx7I-(*4`9fR%K@A;?@a0A*?HGxz7EpJo?jBb>`BYH*(!XQxg&r za?%r$Qc}Dg{yzBoviFwVd1>#iWcA(Oe={mN`qr-5yJo9x^UZqvBk%s#yZdHuU8iWg zefOr_by1(EynA`~?%&|$x-t6-?yb6MtoHSL$@v%a?ientWOD!6GmCX?_pRmS-?o1* z{j&A@w$kh6=H_MQMITB(7vw&>b!zX-_H=Fj_x*f=49o3`B0xzRn3+Jt8QVqYLG;zo okH8cTq$h6^gyx3_j7fqDX)R7-2D2F%n8g^h8NUD($TBbh0EFqY