Author: Kamil Tekiela (kamil-tekiela)
Date: 2022-07-13T17:31:07+01:00

Commit: 
https://github.com/php/web-php/commit/68e9bffca2ce2dac1d9509a7a0103f65d56642e3
Raw diff: 
https://github.com/php/web-php/commit/68e9bffca2ce2dac1d9509a7a0103f65d56642e3.diff

Upgrade hogan.js

Changed paths:
  A  js/ext/hogan-3.0.2.min.js
  D  js/ext/hogan-2.0.0.min.js
  M  include/footer.inc


Diff:

diff --git a/include/footer.inc b/include/footer.inc
index a04414a428..d8541e60c5 100644
--- a/include/footer.inc
+++ b/include/footer.inc
@@ -87,7 +87,7 @@
  <!-- External and third party libraries. -->
  <script src="https://code.jquery.com/jquery-3.6.0.min.js"; 
integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" 
crossorigin="anonymous"></script>
 <?php
- $jsfiles = array("ext/hogan-2.0.0.min.js", "ext/typeahead.min.js", 
"ext/mousetrap.min.js", "ext/jquery.scrollTo.min.js", "search.js", "common.js");
+ $jsfiles = array("ext/hogan-3.0.2.min.js", "ext/typeahead.min.js", 
"ext/mousetrap.min.js", "ext/jquery.scrollTo.min.js", "search.js", "common.js");
  foreach ($jsfiles as $filename) {
    $path = dirname(__DIR__).'/js/'.$filename;
    echo '<script src="/cached.php?t=' . @filemtime($path) . '&amp;f=/js/' . 
$filename . '"></script>'."\n";
diff --git a/js/ext/hogan-2.0.0.min.js b/js/ext/hogan-2.0.0.min.js
deleted file mode 100644
index 3c2be7236a..0000000000
--- a/js/ext/hogan-2.0.0.min.js
+++ /dev/null
@@ -1 +0,0 @@
-var Hogan={};(function(e,t){function a(e){return 
String(e===null||e===undefined?"":e)}function f(e){e=a(e);return 
u.test(e)?e.replace(n,"&").replace(r,"&lt;").replace(i,"&gt;").replace(s,"&#39;").replace(o,"&quot;"):e}e.Template=function(e,n,r,i){this.r=e||this.r;this.c=r;this.options=i;this.text=n||"";this.buf=t?[]:""};e.Template.prototype={r:function(e,t,n){return""},v:f,t:a,render:function(t,n,r){return
 this.ri([t],n||{},r)},ri:function(e,t,n){return 
this.r(e,t,n)},rp:function(e,t,n,r){var 
i=n[e];if(!i){return""}if(this.c&&typeof 
i=="string"){i=this.c.compile(i,this.options)}return 
i.ri(t,n,r)},rs:function(e,t,n){var 
r=e[e.length-1];if(!l(r)){n(e,t,this);return}for(var 
i=0;i<r.length;i++){e.push(r[i]);n(e,t,this);e.pop()}},s:function(e,t,n,r,i,s,o){var
 u;if(l(e)&&e.length===0){return false}if(typeof 
e=="function"){e=this.ls(e,t,n,r,i,s,o)}u=e===""||!!e;if(!r&&u&&t){t.push(typeof
 e=="object"?e:t[t.length-1])}return u},d:function(e,t,n,r){var 
i=e.split("."),s=this.f(i[0],t,n,r),o=null;if(e==="."&&l(t[t.length-2])){return 
t[t.length-1]}for(var u=1;u<i.length;u++){if(s&&typeof s=="object"&&i[u]in 
s){o=s;s=s[i[u]]}else{s=""}}if(r&&!s){return false}if(!r&&typeof 
s=="function"){t.push(o);s=this.lv(s,t,n);t.pop()}return 
s},f:function(e,t,n,r){var i=false,s=null,o=false;for(var 
u=t.length-1;u>=0;u--){s=t[u];if(s&&typeof s=="object"&&e in 
s){i=s[e];o=true;break}}if(!o){return r?false:""}if(!r&&typeof 
i=="function"){i=this.lv(i,t,n)}return i},ho:function(e,t,n,r,i){var 
s=this.c;var o=this.options;o.delimiters=i;var 
r=e.call(t,r);r=r==null?String(r):r.toString();this.b(s.compile(r,o).render(t,n));return
 
false},b:t?function(e){this.buf.push(e)}:function(e){this.buf+=e},fl:t?function(){var
 e=this.buf.join("");this.buf=[];return e}:function(){var 
e=this.buf;this.buf="";return e},ls:function(e,t,n,r,i,s,o){var 
u=t[t.length-1],a=null;if(!r&&this.c&&e.length>0){return 
this.ho(e,u,n,this.text.substring(i,s),o)}a=e.call(u);if(typeof 
a=="function"){if(r){return true}else if(this.c){return 
this.ho(a,u,n,this.text.substring(i,s),o)}}return a},lv:function(e,t,n){var 
r=t[t.length-1];var i=e.call(r);if(typeof 
i=="function"){i=a(i.call(r));if(this.c&&~i.indexOf("{{")){return 
this.c.compile(i,this.options).render(r,n)}}return a(i)}};var 
n=/&/g,r=/</g,i=/>/g,s=/\'/g,o=/\"/g,u=/[&<>\"\']/;var 
l=Array.isArray||function(e){return 
Object.prototype.toString.call(e)==="[object Array]"}})(typeof 
exports!=="undefined"?exports:Hogan);(function(e){function 
u(e){if(e.n.substr(e.n.length-1)==="}"){e.n=e.n.substring(0,e.n.length-1)}}function
 a(e){if(e.trim){return e.trim()}return e.replace(/^\s*|\s*$/g,"")}function 
f(e,t,n){if(t.charAt(n)!=e.charAt(0)){return false}for(var 
r=1,i=e.length;r<i;r++){if(t.charAt(n+r)!=e.charAt(r)){return false}}return 
true}function l(e,t,n,r){var 
i=[],s=null,o=null;while(e.length>0){o=e.shift();if(o.tag=="#"||o.tag=="^"||c(o,r)){n.push(o);o.nodes=l(e,o.tag,n,r);i.push(o)}else
 if(o.tag=="/"){if(n.length===0){throw new Error("Closing tag without opener: 
/"+o.n)}s=n.pop();if(o.n!=s.n&&!h(o.n,s.n,r)){throw new Error("Nesting error: 
"+s.n+" vs. "+o.n)}s.end=o.i;return i}else{i.push(o)}}if(n.length>0){throw new 
Error("missing closing tag: "+n.pop().n)}return i}function c(e,t){for(var 
n=0,r=t.length;n<r;n++){if(t[n].o==e.n){e.tag="#";return true}}}function 
h(e,t,n){for(var r=0,i=n.length;r<i;r++){if(n[r].c==e&&n[r].o==t){return 
true}}}function p(e){return 
e.replace(s,"\\\\").replace(n,'\\"').replace(r,"\\n").replace(i,"\\r")}function 
d(e){return~e.indexOf(".")?"d":"f"}function v(e){var t="";for(var 
n=0,r=e.length;n<r;n++){var 
i=e[n].tag;if(i=="#"){t+=m(e[n].nodes,e[n].n,d(e[n].n),e[n].i,e[n].end,e[n].otag+"
 "+e[n].ctag)}else if(i=="^"){t+=g(e[n].nodes,e[n].n,d(e[n].n))}else 
if(i=="<"||i==">"){t+=y(e[n])}else 
if(i=="{"||i=="&"){t+=b(e[n].n,d(e[n].n))}else 
if(i=="\n"){t+=E('"\\n"'+(e.length-1==n?"":" + i"))}else 
if(i=="_v"){t+=w(e[n].n,d(e[n].n))}else 
if(i===undefined){t+=E('"'+p(e[n])+'"')}}return t}function 
m(e,t,n,r,i,s){return"if(_.s(_."+n+'("'+p(t)+'",c,p,1),'+"c,p,0,"+r+","+i+',"'+s+'")){'+"_.rs(c,p,"+"function(c,p,_){"+v(e)+"});c.pop();}"}function
 
g(e,t,n){return"if(!_.s(_."+n+'("'+p(t)+'",c,p,1),c,p,1,0,0,"")){'+v(e)+"};"}function
 y(e){return'_.b(_.rp("'+p(e.n)+'",c,p,"'+(e.indent||"")+'"));'}function 
b(e,t){return"_.b(_.t(_."+t+'("'+p(e)+'",c,p,0)));'}function 
w(e,t){return"_.b(_.v(_."+t+'("'+p(e)+'",c,p,0)));'}function 
E(e){return"_.b("+e+");"}var 
t=/\S/,n=/\"/g,r=/\n/g,i=/\r/g,s=/\\/g,o={"#":1,"^":2,"/":3,"!":4,">":5,"<":6,"=":7,_v:8,"{":9,"&":10};e.scan=function(n,r){function
 S(){if(v.length>0){m.push(new String(v));v=""}}function x(){var e=true;for(var 
n=b;n<m.length;n++){e=m[n].tag&&o[m[n].tag]<o["_v"]||!m[n].tag&&m[n].match(t)===null;if(!e){return
 false}}return e}function T(e,t){S();if(e&&x()){for(var 
n=b,r;n<m.length;n++){if(!m[n].tag){if((r=m[n+1])&&r.tag==">"){r.indent=m[n].toString()}m.splice(n,1)}}}else
 if(!t){m.push({tag:"\n"})}g=false;b=m.length}function N(e,t){var 
n="="+E,r=e.indexOf(n,t),i=a(e.substring(e.indexOf("=",t)+1,r)).split(" 
");w=i[0];E=i[1];return r+n.length-1}var 
i=n.length,s=0,l=1,c=2,h=s,p=null,d=null,v="",m=[],g=false,y=0,b=0,w="{{",E="}}";if(r){r=r.split("
 
");w=r[0];E=r[1]}for(y=0;y<i;y++){if(h==s){if(f(w,n,y)){--y;S();h=l}else{if(n.charAt(y)=="\n"){T(g)}else{v+=n.charAt(y)}}}else
 
if(h==l){y+=w.length-1;d=o[n.charAt(y+1)];p=d?n.charAt(y+1):"_v";if(p=="="){y=N(n,y);h=s}else{if(d){y++}h=c}g=y}else{if(f(E,n,y)){m.push({tag:p,n:a(v),otag:w,ctag:E,i:p=="/"?g-E.length:y+w.length});v="";y+=E.length-1;h=s;if(p=="{"){if(E=="}}"){y++}else{u(m[m.length-1])}}}else{v+=n.charAt(y)}}}T(g,true);return
 m};e.generate=function(t,n,r){var i='var _=this;_.b(i=i||"");'+v(t)+"return 
_.fl();";if(r.asString){return"function(c,p,i){"+i+";}"}return new 
e.Template(new 
Function("c","p","i",i),n,e,r)};e.parse=function(e,t,n){n=n||{};return 
l(e,"",[],n.sectionTags||[])},e.cache={};e.compile=function(e,t){t=t||{};var 
n=e+"||"+!!t.asString;var r=this.cache[n];if(r){return 
r}r=this.generate(this.parse(this.scan(e,t.delimiters),e,t),e,t);return 
this.cache[n]=r}})(typeof exports!=="undefined"?exports:Hogan)
diff --git a/js/ext/hogan-3.0.2.min.js b/js/ext/hogan-3.0.2.min.js
new file mode 100644
index 0000000000..527bf6de3a
--- /dev/null
+++ b/js/ext/hogan-3.0.2.min.js
@@ -0,0 +1,5 @@
+/**
+* @preserve Copyright 2012 Twitter, Inc.
+* @license http://www.apache.org/licenses/LICENSE-2.0.txt
+*/
+var Hogan={};!function(t){function n(t,n,e){var i;return n&&"object"==typeof 
n&&(void 0!==n[t]?i=n[t]:e&&n.get&&"function"==typeof 
n.get&&(i=n.get(t))),i}function e(t,n,e,i,r,s){function a(){}function 
o(){}a.prototype=t,o.prototype=t.subs;var u,c=new a;c.subs=new 
o,c.subsText={},c.buf="",i=i||{},c.stackSubs=i,c.subsText=s;for(u in 
n)i[u]||(i[u]=n[u]);for(u in i)c.subs[u]=i[u];r=r||{},c.stackPartials=r;for(u 
in e)r[u]||(r[u]=e[u]);for(u in r)c.partials[u]=r[u];return c}function 
i(t){return String(null===t||void 0===t?"":t)}function r(t){return 
t=i(t),l.test(t)?t.replace(s,"&amp;").replace(a,"&lt;").replace(o,"&gt;").replace(u,"&#39;").replace(c,"&quot;"):t}t.Template=function(t,n,e,i){t=t||{},this.r=t.code||this.r,this.c=e,this.options=i||{},this.text=n||"",this.partials=t.partials||{},this.subs=t.subs||{},this.buf=""},t.Template.prototype={r:function(){return""},v:r,t:i,render:function(t,n,e){return
 this.ri([t],n||{},e)},ri:function(t,n,e){return 
this.r(t,n,e)},ep:function(t,n){var 
i=this.partials[t],r=n[i.name];if(i.instance&&i.base==r)return 
i.instance;if("string"==typeof r){if(!this.c)throw new Error("No compiler 
available.");r=this.c.compile(r,this.options)}if(!r)return 
null;if(this.partials[t].base=r,i.subs){n.stackText||(n.stackText={});for(key 
in i.subs)n.stackText[key]||(n.stackText[key]=void 
0!==this.activeSub&&n.stackText[this.activeSub]?n.stackText[this.activeSub]:this.text);r=e(r,i.subs,i.partials,this.stackSubs,this.stackPartials,n.stackText)}return
 this.partials[t].instance=r,r},rp:function(t,n,e,i){var r=this.ep(t,e);return 
r?r.ri(n,e,i):""},rs:function(t,n,e){var i=t[t.length-1];if(!f(i))return void 
e(t,n,this);for(var 
r=0;r<i.length;r++)t.push(i[r]),e(t,n,this),t.pop()},s:function(t,n,e,i,r,s,a){var
 o;return f(t)&&0===t.length?!1:("function"==typeof 
t&&(t=this.ms(t,n,e,i,r,s,a)),o=!!t,!i&&o&&n&&n.push("object"==typeof 
t?t:n[n.length-1]),o)},d:function(t,e,i,r){var 
s,a=t.split("."),o=this.f(a[0],e,i,r),u=this.options.modelGet,c=null;if("."===t&&f(e[e.length-2]))o=e[e.length-1];else
 for(var l=1;l<a.length;l++)s=n(a[l],o,u),void 0!==s?(c=o,o=s):o="";return 
r&&!o?!1:(r||"function"!=typeof 
o||(e.push(c),o=this.mv(o,e,i),e.pop()),o)},f:function(t,e,i,r){for(var 
s=!1,a=null,o=!1,u=this.options.modelGet,c=e.length-1;c>=0;c--)if(a=e[c],s=n(t,a,u),void
 0!==s){o=!0;break}return o?(r||"function"!=typeof 
s||(s=this.mv(s,e,i)),s):r?!1:""},ls:function(t,n,e,r,s){var 
a=this.options.delimiters;return 
this.options.delimiters=s,this.b(this.ct(i(t.call(n,r)),n,e)),this.options.delimiters=a,!1},ct:function(t,n,e){if(this.options.disableLambda)throw
 new Error("Lambda features disabled.");return 
this.c.compile(t,this.options).render(n,e)},b:function(t){this.buf+=t},fl:function(){var
 t=this.buf;return this.buf="",t},ms:function(t,n,e,i,r,s,a){var 
o,u=n[n.length-1],c=t.call(u);return"function"==typeof 
c?i?!0:(o=this.activeSub&&this.subsText&&this.subsText[this.activeSub]?this.subsText[this.activeSub]:this.text,this.ls(c,u,e,o.substring(r,s),a)):c},mv:function(t,n,e){var
 r=n[n.length-1],s=t.call(r);return"function"==typeof 
s?this.ct(i(s.call(r)),r,e):s},sub:function(t,n,e,i){var 
r=this.subs[t];r&&(this.activeSub=t,r(n,e,this,i),this.activeSub=!1)}};var 
s=/&/g,a=/</g,o=/>/g,u=/\'/g,c=/\"/g,l=/[&<>\"\']/,f=Array.isArray||function(t){return"[object
 Array]"===Object.prototype.toString.call(t)}}("undefined"!=typeof 
exports?exports:Hogan),function(t){function 
n(t){"}"===t.n.substr(t.n.length-1)&&(t.n=t.n.substring(0,t.n.length-1))}function
 e(t){return t.trim?t.trim():t.replace(/^\s*|\s*$/g,"")}function 
i(t,n,e){if(n.charAt(e)!=t.charAt(0))return!1;for(var 
i=1,r=t.length;r>i;i++)if(n.charAt(e+i)!=t.charAt(i))return!1;return!0}function 
r(n,e,i,o){var 
u=[],c=null,l=null,f=null;for(l=i[i.length-1];n.length>0;){if(f=n.shift(),l&&"<"==l.tag&&!(f.tag
 in k))throw new Error("Illegal content in < super 
tag.");if(t.tags[f.tag]<=t.tags.$||s(f,o))i.push(f),f.nodes=r(n,f.tag,i,o);else{if("/"==f.tag){if(0===i.length)throw
 new Error("Closing tag without opener: 
/"+f.n);if(c=i.pop(),f.n!=c.n&&!a(f.n,c.n,o))throw new Error("Nesting error: 
"+c.n+" vs. "+f.n);return 
c.end=f.i,u}"\n"==f.tag&&(f.last=0==n.length||"\n"==n[0].tag)}u.push(f)}if(i.length>0)throw
 new Error("missing closing tag: "+i.pop().n);return u}function s(t,n){for(var 
e=0,i=n.length;i>e;e++)if(n[e].o==t.n)return t.tag="#",!0}function 
a(t,n,e){for(var 
i=0,r=e.length;r>i;i++)if(e[i].c==t&&e[i].o==n)return!0}function o(t){var 
n=[];for(var e in t)n.push('"'+c(e)+'": function(c,p,t,i) {'+t[e]+"}");return"{ 
"+n.join(",")+" }"}function u(t){var n=[];for(var e in 
t.partials)n.push('"'+c(e)+'":{name:"'+c(t.partials[e].name)+'", 
'+u(t.partials[e])+"}");return"partials: {"+n.join(",")+"}, subs: 
"+o(t.subs)}function c(t){return 
t.replace(m,"\\\\").replace(v,'\\"').replace(b,"\\n").replace(d,"\\r").replace(x,"\\u2028").replace(w,"\\u2029")}function
 l(t){return~t.indexOf(".")?"d":"f"}function f(t,n){var 
e="<"+(n.prefix||""),i=e+t.n+y++;return 
n.partials[i]={name:t.n,partials:{}},n.code+='t.b(t.rp("'+c(i)+'",c,p,"'+(t.indent||"")+'"));',i}function
 h(t,n){n.code+="t.b(t.t(t."+l(t.n)+'("'+c(t.n)+'",c,p,0)));'}function 
p(t){return"t.b("+t+");"}var 
g=/\S/,v=/\"/g,b=/\n/g,d=/\r/g,m=/\\/g,x=/\u2028/,w=/\u2029/;t.tags={"#":1,"^":2,"<":3,$:4,"/":5,"!":6,">":7,"=":8,_v:9,"{":10,"&":11,_t:12},t.scan=function(r,s){function
 a(){m.length>0&&(x.push({tag:"_t",text:new String(m)}),m="")}function 
o(){for(var 
n=!0,e=y;e<x.length;e++)if(n=t.tags[x[e].tag]<t.tags._v||"_t"==x[e].tag&&null===x[e].text.match(g),!n)return!1;return
 n}function u(t,n){if(a(),t&&o())for(var 
e,i=y;i<x.length;i++)x[i].text&&((e=x[i+1])&&">"==e.tag&&(e.indent=x[i].text.toString()),x.splice(i,1));else
 n||x.push({tag:"\n"});w=!1,y=x.length}function c(t,n){var 
i="="+S,r=t.indexOf(i,n),s=e(t.substring(t.indexOf("=",n)+1,r)).split(" 
");return T=s[0],S=s[s.length-1],r+i.length-1}var 
l=r.length,f=0,h=1,p=2,v=f,b=null,d=null,m="",x=[],w=!1,k=0,y=0,T="{{",S="}}";for(s&&(s=s.split("
 
"),T=s[0],S=s[1]),k=0;l>k;k++)v==f?i(T,r,k)?(--k,a(),v=h):"\n"==r.charAt(k)?u(w):m+=r.charAt(k):v==h?(k+=T.length-1,d=t.tags[r.charAt(k+1)],b=d?r.charAt(k+1):"_v","="==b?(k=c(r,k),v=f):(d&&k++,v=p),w=k):i(S,r,k)?(x.push({tag:b,n:e(m),otag:T,ctag:S,i:"/"==b?w-T.length:k+S.length}),m="",k+=S.length-1,v=f,"{"==b&&("}}"==S?k++:n(x[x.length-1]))):m+=r.charAt(k);return
 u(w,!0),x};var 
k={_t:!0,"\n":!0,$:!0,"/":!0};t.stringify=function(n){return"{code: function 
(c,p,i) { "+t.wrapMain(n.code)+" },"+u(n)+"}"};var 
y=0;t.generate=function(n,e,i){y=0;var r={code:"",subs:{},partials:{}};return 
t.walk(n,r),i.asString?this.stringify(r,e,i):this.makeTemplate(r,e,i)},t.wrapMain=function(t){return'var
 t=this;t.b(i=i||"");'+t+"return 
t.fl();"},t.template=t.Template,t.makeTemplate=function(t,n,e){var 
i=this.makePartials(t);return i.code=new 
Function("c","p","i",this.wrapMain(t.code)),new 
this.template(i,n,this,e)},t.makePartials=function(t){var 
n,e={subs:{},partials:t.partials,name:t.name};for(n in 
e.partials)e.partials[n]=this.makePartials(e.partials[n]);for(n in 
t.subs)e.subs[n]=new Function("c","p","t","i",t.subs[n]);return 
e},t.codegen={"#":function(n,e){e.code+="if(t.s(t."+l(n.n)+'("'+c(n.n)+'",c,p,1),c,p,0,'+n.i+","+n.end+',"'+n.otag+"
 
"+n.ctag+'")){t.rs(c,p,function(c,p,t){',t.walk(n.nodes,e),e.code+="});c.pop();}"},"^":function(n,e){e.code+="if(!t.s(t."+l(n.n)+'("'+c(n.n)+'",c,p,1),c,p,1,0,0,"")){',t.walk(n.nodes,e),e.code+="};"},">":f,"<":function(n,e){var
 i={partials:{},code:"",subs:{},inPartial:!0};t.walk(n.nodes,i);var 
r=e.partials[f(n,e)];r.subs=i.subs,r.partials=i.partials},$:function(n,e){var 
i={subs:{},code:"",partials:e.partials,prefix:n.n};t.walk(n.nodes,i),e.subs[n.n]=i.code,e.inPartial||(e.code+='t.sub("'+c(n.n)+'",c,p,i);')},"\n":function(t,n){n.code+=p('"\\n"'+(t.last?"":"
 + 
i"))},_v:function(t,n){n.code+="t.b(t.v(t."+l(t.n)+'("'+c(t.n)+'",c,p,0)));'},_t:function(t,n){n.code+=p('"'+c(t.text)+'"')},"{":h,"&":h},t.walk=function(n,e){for(var
 i,r=0,s=n.length;s>r;r++)i=t.codegen[n[r].tag],i&&i(n[r],e);return 
e},t.parse=function(t,n,e){return 
e=e||{},r(t,"",[],e.sectionTags||[])},t.cache={},t.cacheKey=function(t,n){return[t,!!n.asString,!!n.disableLambda,n.delimiters,!!n.modelGet].join("||")},t.compile=function(n,e){e=e||{};var
 i=t.cacheKey(n,e),r=this.cache[i];if(r){var s=r.partials;for(var a in s)delete 
s[a].instance;return r}return 
r=this.generate(this.parse(this.scan(n,e.delimiters),n,e),n,e),this.cache[i]=r}}("undefined"!=typeof
 exports?exports:Hogan);


--
PHP Webmaster List Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to