Really Simple SSL - Version 5.0.2

Version Description

  • Improvement: remove some files to prevent false positive warnings from windows defender
  • Improvement: move variable in cpanel integration to prevent php warnings.
Download this release

Release Info

Developer RogierLankhorst
Plugin Icon 128x128 Really Simple SSL
Version 5.0.2
Comparing to
See all releases

Code changes from version 5.0.1 to 5.0.2

Files changed (92) hide show
  1. includes/simple-scrollbar.min.js +1 -1
  2. includes/simple-scrollbar.min.min.js +1 -0
  3. js/scripts.min.js +1 -1
  4. js/scripts.min.min.js +1 -0
  5. lets-encrypt/class-letsencrypt-handler.php +1 -5
  6. lets-encrypt/composer.lock +0 -120
  7. lets-encrypt/composer.phar +0 -0
  8. lets-encrypt/integrations/cpanel/cpanel.php +0 -100
  9. lets-encrypt/integrations/cpanel/functions.php +0 -35
  10. lets-encrypt/integrations/plesk/CertificateInstaller.php +0 -32
  11. lets-encrypt/node_modules/composer/CHANGELOG.md +0 -114
  12. lets-encrypt/node_modules/composer/LICENSE +0 -21
  13. lets-encrypt/node_modules/composer/README.md +0 -608
  14. lets-encrypt/node_modules/composer/index.js +0 -1
  15. lets-encrypt/node_modules/composer/lib/generator.js +0 -645
  16. lets-encrypt/node_modules/composer/lib/parse.js +0 -89
  17. lets-encrypt/node_modules/composer/lib/task.js +0 -131
  18. lets-encrypt/node_modules/composer/lib/tasks.js +0 -409
  19. lets-encrypt/node_modules/composer/lib/timer.js +0 -37
  20. lets-encrypt/node_modules/composer/lib/utils.js +0 -68
  21. lets-encrypt/node_modules/composer/package.json +0 -118
  22. lets-encrypt/node_modules/pretty-time/LICENSE +0 -21
  23. lets-encrypt/node_modules/pretty-time/README.md +0 -169
  24. lets-encrypt/node_modules/pretty-time/index.js +0 -56
  25. lets-encrypt/node_modules/pretty-time/package.json +0 -99
  26. lets-encrypt/node_modules/pretty-time/utils.js +0 -32
  27. lets-encrypt/node_modules/use/LICENSE +0 -21
  28. lets-encrypt/node_modules/use/README.md +0 -90
  29. lets-encrypt/node_modules/use/index.js +0 -155
  30. lets-encrypt/node_modules/use/package.json +0 -108
  31. lets-encrypt/package-lock.json +0 -25
  32. lets-encrypt/vendor/plesk/api-php-lib/composer.lock +0 -2919
  33. lets-encrypt/wizard/assets/js/wizard.min.min.js +1 -0
  34. lets-encrypt/wizard/assets/select2/js/i18n/af.min.min.js +1 -0
  35. lets-encrypt/wizard/assets/select2/js/i18n/ar.min.min.js +1 -0
  36. lets-encrypt/wizard/assets/select2/js/i18n/az.min.min.js +1 -0
  37. lets-encrypt/wizard/assets/select2/js/i18n/bg.min.min.js +1 -0
  38. lets-encrypt/wizard/assets/select2/js/i18n/bs.min.min.js +1 -0
  39. lets-encrypt/wizard/assets/select2/js/i18n/ca.min.min.js +1 -0
  40. lets-encrypt/wizard/assets/select2/js/i18n/cs.min.min.js +1 -0
  41. lets-encrypt/wizard/assets/select2/js/i18n/da.min.min.js +1 -0
  42. lets-encrypt/wizard/assets/select2/js/i18n/de.min.min.js +1 -0
  43. lets-encrypt/wizard/assets/select2/js/i18n/dsb.min.min.js +1 -0
  44. lets-encrypt/wizard/assets/select2/js/i18n/el.min.min.js +1 -0
  45. lets-encrypt/wizard/assets/select2/js/i18n/en.min.min.js +1 -0
  46. lets-encrypt/wizard/assets/select2/js/i18n/es.min.min.js +1 -0
  47. lets-encrypt/wizard/assets/select2/js/i18n/et.min.min.js +1 -0
  48. lets-encrypt/wizard/assets/select2/js/i18n/eu.min.min.js +1 -0
  49. lets-encrypt/wizard/assets/select2/js/i18n/fa.min.min.js +1 -0
  50. lets-encrypt/wizard/assets/select2/js/i18n/fi.min.min.js +1 -0
  51. lets-encrypt/wizard/assets/select2/js/i18n/fr.min.min.js +1 -0
  52. lets-encrypt/wizard/assets/select2/js/i18n/gl.min.min.js +1 -0
  53. lets-encrypt/wizard/assets/select2/js/i18n/he.min.min.js +1 -0
  54. lets-encrypt/wizard/assets/select2/js/i18n/hi.min.min.js +1 -0
  55. lets-encrypt/wizard/assets/select2/js/i18n/hr.min.min.js +1 -0
  56. lets-encrypt/wizard/assets/select2/js/i18n/hsb.min.min.js +1 -0
  57. lets-encrypt/wizard/assets/select2/js/i18n/hu.min.min.js +1 -0
  58. lets-encrypt/wizard/assets/select2/js/i18n/hy.min.min.js +1 -0
  59. lets-encrypt/wizard/assets/select2/js/i18n/id.min.min.js +1 -0
  60. lets-encrypt/wizard/assets/select2/js/i18n/is.min.min.js +1 -0
  61. lets-encrypt/wizard/assets/select2/js/i18n/it.min.min.js +1 -0
  62. lets-encrypt/wizard/assets/select2/js/i18n/ja.min.min.js +1 -0
  63. lets-encrypt/wizard/assets/select2/js/i18n/km.min.min.js +1 -0
  64. lets-encrypt/wizard/assets/select2/js/i18n/ko.min.min.js +1 -0
  65. lets-encrypt/wizard/assets/select2/js/i18n/lt.min.min.js +1 -0
  66. lets-encrypt/wizard/assets/select2/js/i18n/lv.min.min.js +1 -0
  67. lets-encrypt/wizard/assets/select2/js/i18n/mk.min.min.js +1 -0
  68. lets-encrypt/wizard/assets/select2/js/i18n/ms.min.min.js +1 -0
  69. lets-encrypt/wizard/assets/select2/js/i18n/nb.min.min.js +1 -0
  70. lets-encrypt/wizard/assets/select2/js/i18n/nl.min.min.js +1 -0
  71. lets-encrypt/wizard/assets/select2/js/i18n/pl.min.min.js +1 -0
  72. lets-encrypt/wizard/assets/select2/js/i18n/ps.min.min.js +1 -0
  73. lets-encrypt/wizard/assets/select2/js/i18n/pt-BR.min.min.js +1 -0
  74. lets-encrypt/wizard/assets/select2/js/i18n/pt.min.min.js +1 -0
  75. lets-encrypt/wizard/assets/select2/js/i18n/ro.min.min.js +1 -0
  76. lets-encrypt/wizard/assets/select2/js/i18n/ru.min.min.js +1 -0
  77. lets-encrypt/wizard/assets/select2/js/i18n/sk.min.min.js +1 -0
  78. lets-encrypt/wizard/assets/select2/js/i18n/sl.min.min.js +1 -0
  79. lets-encrypt/wizard/assets/select2/js/i18n/sr-Cyrl.min.min.js +1 -0
  80. lets-encrypt/wizard/assets/select2/js/i18n/sr.min.min.js +1 -0
  81. lets-encrypt/wizard/assets/select2/js/i18n/sv.min.min.js +1 -0
  82. lets-encrypt/wizard/assets/select2/js/i18n/th.min.min.js +1 -0
  83. lets-encrypt/wizard/assets/select2/js/i18n/tk.min.min.js +1 -0
  84. lets-encrypt/wizard/assets/select2/js/i18n/tr.min.min.js +1 -0
  85. lets-encrypt/wizard/assets/select2/js/i18n/uk.min.min.js +1 -0
  86. lets-encrypt/wizard/assets/select2/js/i18n/vi.min.min.js +1 -0
  87. lets-encrypt/wizard/assets/select2/js/i18n/zh-CN.min.min.js +1 -0
  88. lets-encrypt/wizard/assets/select2/js/i18n/zh-TW.min.min.js +1 -0
  89. lets-encrypt/wizard/assets/select2/js/select2.full.min.min.js +1 -0
  90. lets-encrypt/wizard/assets/select2/js/select2.min.min.js +1 -0
  91. readme.txt +5 -1
  92. rlrsssl-really-simple-ssl.php +1 -1
includes/simple-scrollbar.min.js CHANGED
@@ -1 +1 @@
1
- (function(a,b){if(typeof exports==="object"){module.exports=b(window,document)}else{a.SimpleScrollbar=b(window,document)}})(this,function(h,f){var e=h.requestAnimationFrame||h.setImmediate||function(d){return setTimeout(d,0)};function g(d){Object.defineProperty(d,"data-simple-scrollbar",{value:new j(d),configurable:true})}function i(d){if(!Object.prototype.hasOwnProperty.call(d,"data-simple-scrollbar")){return}d["data-simple-scrollbar"].unBind();delete d["data-simple-scrollbar"]}function b(o,m){var d;o.addEventListener("mousedown",function(p){d=p.pageY;o.classList.add("ss-grabbed");f.body.classList.add("ss-grabbed");f.addEventListener("mousemove",n);f.addEventListener("mouseup",l);return false});function n(p){var q=p.pageY-d;d=p.pageY;e(function(){m.el.scrollTop+=q/m.scrollRatio})}function l(){o.classList.remove("ss-grabbed");f.body.classList.remove("ss-grabbed");f.removeEventListener("mousemove",n);f.removeEventListener("mouseup",l)}}function k(l){this.target=l;this.content=l.firstElementChild;this.direction=h.getComputedStyle(this.target).direction;this.bar='<div class="ss-scroll">';this.mB=this.moveBar.bind(this);this.wrapper=f.createElement("div");this.wrapper.setAttribute("class","rsssl-ss-wrapper");this.el=f.createElement("div");this.el.setAttribute("class","rsssl-ss-content");if(this.direction==="rtl"){this.el.classList.add("rtl")}this.wrapper.appendChild(this.el);while(this.target.firstChild){this.el.appendChild(this.target.firstChild)}this.target.appendChild(this.wrapper);this.target.insertAdjacentHTML("beforeend",this.bar);this.bar=this.target.lastChild;b(this.bar,this);this.moveBar();h.addEventListener("resize",this.mB);this.el.addEventListener("scroll",this.mB);this.el.addEventListener("mouseenter",this.mB);this.target.classList.add("ss-container");var d=h.getComputedStyle(l);if(d.height==="0px"&&d["max-height"]!=="0px"){l.style.height=d["max-height"]}this.unBind=function(){h.removeEventListener("resize",this.mB);this.el.removeEventListener("scroll",this.mB);this.el.removeEventListener("mouseenter",this.mB);this.target.classList.remove("ss-container");this.target.insertBefore(this.content,this.wrapper);this.target.removeChild(this.wrapper);this.target.removeChild(this.bar);this.bar=null}}k.prototype={moveBar:function(o){var n=this.el.scrollHeight,d=this.el.clientHeight,p=this;this.scrollRatio=d/n;var l=p.direction==="rtl";var m=l?(p.target.clientWidth-p.bar.clientWidth+18):(p.target.clientWidth-p.bar.clientWidth)*-1;e(function(){if(p.scrollRatio>=1){p.bar.classList.add("ss-hidden")}else{p.bar.classList.remove("ss-hidden");p.bar.style.cssText="height:"+Math.max(p.scrollRatio*100,10)+"%; top:"+(p.el.scrollTop/n)*100+"%;right:"+m+"px;"}})}};function a(){var d=f.querySelectorAll("*[ss-container]");for(var l=0;l<d.length;l++){g(d[l])}}function c(){var d=f.querySelectorAll(".ss-container");for(var l=0;l<d.length;l++){i(d[l])}}f.addEventListener("DOMContentLoaded",a);k.initEl=g;k.initAll=a;k.unbindEl=i;k.unbindAll=c;var j=k;return j});
1
+ (function(root,factory){if(typeof exports==="object"){module.exports=factory(window,document)}else{root.SimpleScrollbar=factory(window,document)}})(this,function(w,d){var raf=w.requestAnimationFrame||w.setImmediate||function(c){return setTimeout(c,0)};function initEl(el){Object.defineProperty(el,"data-simple-scrollbar",{value:new SimpleScrollbar(el),configurable:true})}function unbindEl(el){if(!Object.prototype.hasOwnProperty.call(el,"data-simple-scrollbar"))return;el["data-simple-scrollbar"].unBind();delete el["data-simple-scrollbar"]}function dragDealer(el,context){var lastPageY;el.addEventListener("mousedown",function(e){lastPageY=e.pageY;el.classList.add("ss-grabbed");d.body.classList.add("ss-grabbed");d.addEventListener("mousemove",drag);d.addEventListener("mouseup",stop);return false});function drag(e){var delta=e.pageY-lastPageY;lastPageY=e.pageY;raf(function(){context.el.scrollTop+=delta/context.scrollRatio})}function stop(){el.classList.remove("ss-grabbed");d.body.classList.remove("ss-grabbed");d.removeEventListener("mousemove",drag);d.removeEventListener("mouseup",stop)}}function ss(el){this.target=el;this.content=el.firstElementChild;this.direction=w.getComputedStyle(this.target).direction;this.bar='<div class="ss-scroll">';this.mB=this.moveBar.bind(this);this.wrapper=d.createElement("div");this.wrapper.setAttribute("class","rsssl-ss-wrapper");this.el=d.createElement("div");this.el.setAttribute("class","rsssl-ss-content");if(this.direction==="rtl"){this.el.classList.add("rtl")}this.wrapper.appendChild(this.el);while(this.target.firstChild){this.el.appendChild(this.target.firstChild)}this.target.appendChild(this.wrapper);this.target.insertAdjacentHTML("beforeend",this.bar);this.bar=this.target.lastChild;dragDealer(this.bar,this);this.moveBar();w.addEventListener("resize",this.mB);this.el.addEventListener("scroll",this.mB);this.el.addEventListener("mouseenter",this.mB);this.target.classList.add("ss-container");var css=w.getComputedStyle(el);if(css["height"]==="0px"&&css["max-height"]!=="0px"){el.style.height=css["max-height"]}this.unBind=function(){w.removeEventListener("resize",this.mB);this.el.removeEventListener("scroll",this.mB);this.el.removeEventListener("mouseenter",this.mB);this.target.classList.remove("ss-container");this.target.insertBefore(this.content,this.wrapper);this.target.removeChild(this.wrapper);this.target.removeChild(this.bar);this.bar=null}}ss.prototype={moveBar:function(e){var totalHeight=this.el.scrollHeight,ownHeight=this.el.clientHeight,_this=this;this.scrollRatio=ownHeight/totalHeight;var isRtl=_this.direction==="rtl";var right=isRtl?_this.target.clientWidth-_this.bar.clientWidth+18:(_this.target.clientWidth-_this.bar.clientWidth)*-1;raf(function(){if(_this.scrollRatio>=1){_this.bar.classList.add("ss-hidden")}else{_this.bar.classList.remove("ss-hidden");_this.bar.style.cssText="height:"+Math.max(_this.scrollRatio*100,10)+"%; top:"+_this.el.scrollTop/totalHeight*100+"%;right:"+right+"px;"}})}};function initAll(){var nodes=d.querySelectorAll(".rsssl-scroll-container");for(var i=0;i<nodes.length;i++){initEl(nodes[i])}}function unbindAll(){var nodes=d.querySelectorAll(".ss-container");for(var i=0;i<nodes.length;i++){unbindEl(nodes[i])}}d.addEventListener("DOMContentLoaded",initAll);ss.initEl=initEl;ss.initAll=initAll;ss.unbindEl=unbindEl;ss.unbindAll=unbindAll;var SimpleScrollbar=ss;return SimpleScrollbar});
includes/simple-scrollbar.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(a,b){if(typeof exports==="object"){module.exports=b(window,document)}else{a.SimpleScrollbar=b(window,document)}})(this,function(h,f){var e=h.requestAnimationFrame||h.setImmediate||function(d){return setTimeout(d,0)};function g(d){Object.defineProperty(d,"data-simple-scrollbar",{value:new j(d),configurable:true})}function i(d){if(!Object.prototype.hasOwnProperty.call(d,"data-simple-scrollbar")){return}d["data-simple-scrollbar"].unBind();delete d["data-simple-scrollbar"]}function b(o,m){var d;o.addEventListener("mousedown",function(p){d=p.pageY;o.classList.add("ss-grabbed");f.body.classList.add("ss-grabbed");f.addEventListener("mousemove",n);f.addEventListener("mouseup",l);return false});function n(p){var q=p.pageY-d;d=p.pageY;e(function(){m.el.scrollTop+=q/m.scrollRatio})}function l(){o.classList.remove("ss-grabbed");f.body.classList.remove("ss-grabbed");f.removeEventListener("mousemove",n);f.removeEventListener("mouseup",l)}}function k(l){this.target=l;this.content=l.firstElementChild;this.direction=h.getComputedStyle(this.target).direction;this.bar='<div class="ss-scroll">';this.mB=this.moveBar.bind(this);this.wrapper=f.createElement("div");this.wrapper.setAttribute("class","rsssl-ss-wrapper");this.el=f.createElement("div");this.el.setAttribute("class","rsssl-ss-content");if(this.direction==="rtl"){this.el.classList.add("rtl")}this.wrapper.appendChild(this.el);while(this.target.firstChild){this.el.appendChild(this.target.firstChild)}this.target.appendChild(this.wrapper);this.target.insertAdjacentHTML("beforeend",this.bar);this.bar=this.target.lastChild;b(this.bar,this);this.moveBar();h.addEventListener("resize",this.mB);this.el.addEventListener("scroll",this.mB);this.el.addEventListener("mouseenter",this.mB);this.target.classList.add("ss-container");var d=h.getComputedStyle(l);if(d.height==="0px"&&d["max-height"]!=="0px"){l.style.height=d["max-height"]}this.unBind=function(){h.removeEventListener("resize",this.mB);this.el.removeEventListener("scroll",this.mB);this.el.removeEventListener("mouseenter",this.mB);this.target.classList.remove("ss-container");this.target.insertBefore(this.content,this.wrapper);this.target.removeChild(this.wrapper);this.target.removeChild(this.bar);this.bar=null}}k.prototype={moveBar:function(o){var n=this.el.scrollHeight,d=this.el.clientHeight,p=this;this.scrollRatio=d/n;var l=p.direction==="rtl";var m=l?p.target.clientWidth-p.bar.clientWidth+18:(p.target.clientWidth-p.bar.clientWidth)*-1;e(function(){if(p.scrollRatio>=1){p.bar.classList.add("ss-hidden")}else{p.bar.classList.remove("ss-hidden");p.bar.style.cssText="height:"+Math.max(p.scrollRatio*100,10)+"%; top:"+p.el.scrollTop/n*100+"%;right:"+m+"px;"}})}};function a(){var d=f.querySelectorAll("*[ss-container]");for(var l=0;l<d.length;l++){g(d[l])}}function c(){var d=f.querySelectorAll(".ss-container");for(var l=0;l<d.length;l++){i(d[l])}}f.addEventListener("DOMContentLoaded",a);k.initEl=g;k.initAll=a;k.unbindEl=i;k.unbindAll=c;var j=k;return j});
js/scripts.min.js CHANGED
@@ -1 +1 @@
1
- jQuery(document).ready(function(e){var h=window.location.href;var a=h.split("?");if(a.length===1){return false}var f="";var d=a[1].split("&");for(var i in d){if(d.hasOwnProperty(i)){var c=d[i].split("=");if(c[0]==="highlight"){f=c[1]}}}if(f!==""&&e("#rsssl-maybe-highlight-"+f).length){var b=e("#rsssl-maybe-highlight-"+f).closest("tr");e([document.documentElement,document.body]).animate({scrollTop:b.offset().top},1000);b.addClass("rsssl-highlight")}e(document).on("click",".rsssl-slider",function(){j(e(this))});e(document).on("click",".rsssl-container .rsssl-grid-item-content input",function(){j(e(this))});e(document).on("change",".rsssl-container .rsssl-grid-item-content input",function(){j(e(this))});e(document).on("change",".rsssl-container select",function(){j(e(this))});e(".rsssl-button-save").prop("disabled",true);function j(l){l.closest(".rsssl-item").find(".rsssl-save-settings-feedback").fadeIn();l.closest(".rsssl-item").find(".rsssl-button-save").prop("disabled",false)}e(".rsssl-support-forums a").hover(function(){e(this).find(".rsssl-bullet").css("background-color","#FBC43D")},function(){e(this).find(".rsssl-bullet").css("background-color","")});e(document).on("click","#rsssl-remaining-tasks",function(l){if(e("#rsssl-all-tasks").is(":checked")){e("#rsssl-all-tasks").prop("checked",false)}g()});e(document).on("click","#rsssl-all-tasks",function(l){if(e("#rsssl-remaining-tasks").is(":checked")){e("#rsssl-remaining-tasks").prop("checked",false)}g()});function g(){var l;var m;k();if(e("#rsssl-all-tasks").is(":checked")){l="checked";m="unchecked"}else{l="unchecked";m="checked"}e.ajax({type:"post",data:{action:"rsssl_update_task_toggle_option",token:rsssl.token,alltasks:l,remainingtasks:m},url:rsssl.ajaxurl,success:function(){location.reload()}})}k();function k(){var l=e("#rsssl-all-tasks");if(l.is(":checked")){e(".rsssl-tasks-container.rsssl-all-tasks").addClass("active");e(".rsssl-tasks-container.rsssl-remaining-tasks").removeClass("active")}else{e(".rsssl-tasks-container.rsssl-all-tasks").removeClass("active");e(".rsssl-tasks-container.rsssl-remaining-tasks").addClass("active")}}e(document).on("click",".rsssl-close-warning, .rsssl-close-warning-x",function(m){var l=e(this).closest(".rsssl-dashboard-dismiss").data("dismiss_type");var n=e(this).closest("tr");e.ajax({type:"post",data:{type:l,action:"rsssl_dismiss_settings_notice",token:rsssl.token},url:rsssl.ajaxurl,success:function(o){n.remove();if(o.percentage!==""){e(".rsssl-progress-percentage").text(o.percentage+"%");e(".progress-bar-container .progress .bar").css("width",o.percentage+"%")}if(o.tasks!==""){if(o.tasks===rsssl.lowest_possible_task_count){e(".rsssl-progress-text").html(rsssl.finished_text)}else{var p="";if(o.tasks===0){p=rsssl.finished_text}else{if(o.tasks===1){p=rsssl.not_complete_text_singular.replace("%s",o.tasks)}else{p=rsssl.not_complete_text_plural.replace("%s",o.tasks)}}e(".rsssl-progress-text").html(p)}e(".rsssl_remaining_task_count").html(o.tasks);e(".rsssl-progress-count").html(o.tasks)}}})})});
1
+ jQuery(document).ready(function($){"use strict";var sPageURL=window.location.href;var queryString=sPageURL.split("?");if(queryString.length===1)return false;var setting_name="";var rsssl_variables=queryString[1].split("&");for(var key in rsssl_variables){if(rsssl_variables.hasOwnProperty(key)){var output=rsssl_variables[key].split("=");if(output[0]==="highlight"){setting_name=output[1]}}}if(setting_name!==""&&$("#rsssl-maybe-highlight-"+setting_name).length){var tr_element=$("#rsssl-maybe-highlight-"+setting_name).closest("tr");$([document.documentElement,document.body]).animate({scrollTop:tr_element.offset().top},1e3);tr_element.addClass("rsssl-highlight")}$(document).on("click",".rsssl-slider",function(){rssslSaveChangesNotice($(this))});$(document).on("click",".rsssl-container .rsssl-grid-item-content input",function(){rssslSaveChangesNotice($(this))});$(document).on("change",".rsssl-container .rsssl-grid-item-content input",function(){rssslSaveChangesNotice($(this))});$(document).on("change",".rsssl-container select",function(){rssslSaveChangesNotice($(this))});$(".rsssl-button-save").prop("disabled",true);function rssslSaveChangesNotice(obj){obj.closest(".rsssl-item").find(".rsssl-save-settings-feedback").fadeIn();obj.closest(".rsssl-item").find(".rsssl-button-save").prop("disabled",false)}$(".rsssl-support-forums a").hover(function(){$(this).find(".rsssl-bullet").css("background-color","#FBC43D")},function(){$(this).find(".rsssl-bullet").css("background-color","")});$(document).on("click","#rsssl-remaining-tasks",function(e){if($("#rsssl-all-tasks").is(":checked")){$("#rsssl-all-tasks").prop("checked",false)}update_task_toggle_option()});$(document).on("click","#rsssl-all-tasks",function(e){if($("#rsssl-remaining-tasks").is(":checked")){$("#rsssl-remaining-tasks").prop("checked",false)}update_task_toggle_option()});function update_task_toggle_option(){var allTasks;var remainingTasks;rsssl_update_toggle_style();if($("#rsssl-all-tasks").is(":checked")){allTasks="checked";remainingTasks="unchecked"}else{allTasks="unchecked";remainingTasks="checked"}$.ajax({type:"post",data:{action:"rsssl_update_task_toggle_option",token:rsssl.token,alltasks:allTasks,remainingtasks:remainingTasks},url:rsssl.ajaxurl,success:function(){location.reload()}})}rsssl_update_toggle_style();function rsssl_update_toggle_style(){var allTasks=$("#rsssl-all-tasks");if(allTasks.is(":checked")){$(".rsssl-tasks-container.rsssl-all-tasks").addClass("active");$(".rsssl-tasks-container.rsssl-remaining-tasks").removeClass("active")}else{$(".rsssl-tasks-container.rsssl-all-tasks").removeClass("active");$(".rsssl-tasks-container.rsssl-remaining-tasks").addClass("active")}}$(document).on("click",".rsssl-close-warning, .rsssl-close-warning-x",function(event){var type=$(this).closest(".rsssl-dashboard-dismiss").data("dismiss_type");var row=$(this).closest("tr");$.ajax({type:"post",data:{type:type,action:"rsssl_dismiss_settings_notice",token:rsssl.token},url:rsssl.ajaxurl,success:function(data){row.remove();if(data.percentage!==""){$(".rsssl-progress-percentage").text(data.percentage+"%");$(".progress-bar-container .progress .bar").css("width",data.percentage+"%")}if(data.tasks!==""){if(data.tasks===rsssl.lowest_possible_task_count){$(".rsssl-progress-text").html(rsssl.finished_text)}else{var text="";if(data.tasks===0){text=rsssl.finished_text}else if(data.tasks===1){text=rsssl.not_complete_text_singular.replace("%s",data.tasks)}else{text=rsssl.not_complete_text_plural.replace("%s",data.tasks)}$(".rsssl-progress-text").html(text)}$(".rsssl_remaining_task_count").html(data.tasks);$(".rsssl-progress-count").html(data.tasks)}}})})});
js/scripts.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery(document).ready(function(e){var h=window.location.href;var a=h.split("?");if(a.length===1){return false}var f="";var d=a[1].split("&");for(var i in d){if(d.hasOwnProperty(i)){var c=d[i].split("=");if(c[0]==="highlight"){f=c[1]}}}if(f!==""&&e("#rsssl-maybe-highlight-"+f).length){var b=e("#rsssl-maybe-highlight-"+f).closest("tr");e([document.documentElement,document.body]).animate({scrollTop:b.offset().top},1e3);b.addClass("rsssl-highlight")}e(document).on("click",".rsssl-slider",function(){j(e(this))});e(document).on("click",".rsssl-container .rsssl-grid-item-content input",function(){j(e(this))});e(document).on("change",".rsssl-container .rsssl-grid-item-content input",function(){j(e(this))});e(document).on("change",".rsssl-container select",function(){j(e(this))});e(".rsssl-button-save").prop("disabled",true);function j(l){l.closest(".rsssl-item").find(".rsssl-save-settings-feedback").fadeIn();l.closest(".rsssl-item").find(".rsssl-button-save").prop("disabled",false)}e(".rsssl-support-forums a").hover(function(){e(this).find(".rsssl-bullet").css("background-color","#FBC43D")},function(){e(this).find(".rsssl-bullet").css("background-color","")});e(document).on("click","#rsssl-remaining-tasks",function(l){if(e("#rsssl-all-tasks").is(":checked")){e("#rsssl-all-tasks").prop("checked",false)}g()});e(document).on("click","#rsssl-all-tasks",function(l){if(e("#rsssl-remaining-tasks").is(":checked")){e("#rsssl-remaining-tasks").prop("checked",false)}g()});function g(){var l;var m;k();if(e("#rsssl-all-tasks").is(":checked")){l="checked";m="unchecked"}else{l="unchecked";m="checked"}e.ajax({type:"post",data:{action:"rsssl_update_task_toggle_option",token:rsssl.token,alltasks:l,remainingtasks:m},url:rsssl.ajaxurl,success:function(){location.reload()}})}k();function k(){var l=e("#rsssl-all-tasks");if(l.is(":checked")){e(".rsssl-tasks-container.rsssl-all-tasks").addClass("active");e(".rsssl-tasks-container.rsssl-remaining-tasks").removeClass("active")}else{e(".rsssl-tasks-container.rsssl-all-tasks").removeClass("active");e(".rsssl-tasks-container.rsssl-remaining-tasks").addClass("active")}}e(document).on("click",".rsssl-close-warning, .rsssl-close-warning-x",function(m){var l=e(this).closest(".rsssl-dashboard-dismiss").data("dismiss_type");var n=e(this).closest("tr");e.ajax({type:"post",data:{type:l,action:"rsssl_dismiss_settings_notice",token:rsssl.token},url:rsssl.ajaxurl,success:function(o){n.remove();if(o.percentage!==""){e(".rsssl-progress-percentage").text(o.percentage+"%");e(".progress-bar-container .progress .bar").css("width",o.percentage+"%")}if(o.tasks!==""){if(o.tasks===rsssl.lowest_possible_task_count){e(".rsssl-progress-text").html(rsssl.finished_text)}else{var p="";if(o.tasks===0){p=rsssl.finished_text}else{if(o.tasks===1){p=rsssl.not_complete_text_singular.replace("%s",o.tasks)}else{p=rsssl.not_complete_text_plural.replace("%s",o.tasks)}}e(".rsssl-progress-text").html(p)}e(".rsssl_remaining_task_count").html(o.tasks);e(".rsssl-progress-count").html(o.tasks)}}})})});
lets-encrypt/class-letsencrypt-handler.php CHANGED
@@ -1585,11 +1585,7 @@ class rsssl_letsencrypt_handler {
1585
  if (rsssl_is_ready_for('installation')) {
1586
  try {
1587
  if ( $server === 'cpanel' ) {
1588
- if ($type==='default') {
1589
- $response = rsssl_install_cpanel_default();
1590
- } else {
1591
- $response = rsssl_install_cpanel_shell();
1592
- }
1593
 
1594
  if ( $response->status === 'success' ) {
1595
  delete_option( "rsssl_le_start_installation" );
1585
  if (rsssl_is_ready_for('installation')) {
1586
  try {
1587
  if ( $server === 'cpanel' ) {
1588
+ $response = rsssl_install_cpanel_default();
 
 
 
 
1589
 
1590
  if ( $response->status === 'success' ) {
1591
  delete_option( "rsssl_le_start_installation" );
lets-encrypt/composer.lock DELETED
@@ -1,120 +0,0 @@
1
- {
2
- "_readme": [
3
- "This file locks the dependencies of your project to a known state",
4
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
- "This file is @generated automatically"
6
- ],
7
- "content-hash": "b389e777ede0e3ee4826bceeb4a31f85",
8
- "packages": [
9
- {
10
- "name": "fbett/le_acme2",
11
- "version": "1.5.6",
12
- "source": {
13
- "type": "git",
14
- "url": "https://github.com/fbett/le-acme2-php.git",
15
- "reference": "26b2c421764b173326f6bcb0713a86bd614f77fa"
16
- },
17
- "dist": {
18
- "type": "zip",
19
- "url": "https://api.github.com/repos/fbett/le-acme2-php/zipball/26b2c421764b173326f6bcb0713a86bd614f77fa",
20
- "reference": "26b2c421764b173326f6bcb0713a86bd614f77fa",
21
- "shasum": ""
22
- },
23
- "require": {
24
- "ext-curl": "*",
25
- "ext-json": "*",
26
- "ext-openssl": "*",
27
- "php": ">=7.3"
28
- },
29
- "type": "library",
30
- "autoload": {
31
- "psr-0": {
32
- "LE_ACME2": "src/"
33
- }
34
- },
35
- "notification-url": "https://packagist.org/downloads/",
36
- "license": [
37
- "MIT"
38
- ],
39
- "authors": [
40
- {
41
- "name": "Fabian Bett",
42
- "homepage": "https://www.bett-ingenieure.de",
43
- "role": "Developer"
44
- }
45
- ],
46
- "description": "Letsencrypt PHP ACME v2 client",
47
- "homepage": "https://github.com/fbett/le-acme2-php",
48
- "support": {
49
- "issues": "https://github.com/fbett/le-acme2-php/issues",
50
- "source": "https://github.com/fbett/le-acme2-php/tree/v1.5.6"
51
- },
52
- "time": "2021-05-17T07:08:46+00:00"
53
- },
54
- {
55
- "name": "plesk/api-php-lib",
56
- "version": "v1.0.7",
57
- "source": {
58
- "type": "git",
59
- "url": "https://github.com/plesk/api-php-lib.git",
60
- "reference": "7f81b0c3bb0a9f4200aef62a54d3e2c04d91a605"
61
- },
62
- "dist": {
63
- "type": "zip",
64
- "url": "https://api.github.com/repos/plesk/api-php-lib/zipball/7f81b0c3bb0a9f4200aef62a54d3e2c04d91a605",
65
- "reference": "7f81b0c3bb0a9f4200aef62a54d3e2c04d91a605",
66
- "shasum": ""
67
- },
68
- "require": {
69
- "ext-curl": "*",
70
- "ext-simplexml": "*",
71
- "ext-xml": "*",
72
- "php": "^7.3"
73
- },
74
- "require-dev": {
75
- "phpunit/phpunit": "^9",
76
- "spatie/phpunit-watcher": "^1.22"
77
- },
78
- "type": "library",
79
- "extra": {
80
- "branch-alias": {
81
- "dev-master": "2.0.x-dev"
82
- }
83
- },
84
- "autoload": {
85
- "psr-4": {
86
- "PleskX\\": "src/"
87
- }
88
- },
89
- "notification-url": "https://packagist.org/downloads/",
90
- "license": [
91
- "Apache-2.0"
92
- ],
93
- "authors": [
94
- {
95
- "name": "Alexei Yuzhakov",
96
- "email": "sibprogrammer@gmail.com"
97
- },
98
- {
99
- "name": "Plesk International GmbH.",
100
- "email": "plesk-dev-leads@plesk.com"
101
- }
102
- ],
103
- "description": "PHP object-oriented library for Plesk XML-RPC API",
104
- "support": {
105
- "issues": "https://github.com/plesk/api-php-lib/issues",
106
- "source": "https://github.com/plesk/api-php-lib/tree/v1.0.7"
107
- },
108
- "time": "2020-12-24T07:20:26+00:00"
109
- }
110
- ],
111
- "packages-dev": [],
112
- "aliases": [],
113
- "minimum-stability": "stable",
114
- "stability-flags": [],
115
- "prefer-stable": false,
116
- "prefer-lowest": false,
117
- "platform": [],
118
- "platform-dev": [],
119
- "plugin-api-version": "2.0.0"
120
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/composer.phar DELETED
Binary file
lets-encrypt/integrations/cpanel/cpanel.php CHANGED
@@ -36,105 +36,6 @@ class rsssl_cPanel
36
  return false;
37
  }
38
 
39
-
40
- public function installSSLShell($domains){
41
- $response = false;
42
-
43
- if ( is_array($domains) && count($domains)>0 ) {
44
- foreach( $domains as $domain ) {
45
- $response_item = $this->installSSLShellPerDomain($domain);
46
- //set on first iteration
47
- if ( !$response ) {
48
- $response = $response_item;
49
- }
50
-
51
- //override if not successfull, to always get the error.
52
- if ( $response->status !== 'success' ) {
53
- $response = $response_item;
54
- }
55
- }
56
- }
57
-
58
- if ( !$response ) {
59
- $response = new RSSSL_RESPONSE('error', 'stop', __("No valid list of domains.", "really-simple-ssl"));
60
- }
61
-
62
- if ( $response->status === 'success' ) {
63
- update_option('rsssl_le_certificate_installed_by_rsssl', 'cpanel:shell');
64
- }
65
-
66
- return $response;
67
- }
68
-
69
- /**
70
- * Attempt shell installation of SSL
71
- * @param $domain
72
- *
73
- * @return RSSSL_RESPONSE
74
- */
75
-
76
- public function installSSLShellPerDomain($domain){
77
- $key_file = get_option('rsssl_private_key_path');
78
- $cert_file = get_option('rsssl_certificate_path');
79
- $cabundle_file = get_option('rsssl_intermediate_path');
80
-
81
- $cert = file_get_contents($cert_file);
82
- $key = file_get_contents($key_file);
83
- $cabundle = file_get_contents($cabundle_file);
84
-
85
- if (function_exists('escapeshellarg')) {
86
- $enc_cert = escapeshellarg(urlencode(str_replace("\r\n", "\n", $cert)));
87
- $enc_key = escapeshellarg(urlencode(str_replace("\r\n", "\n", $key)));
88
- $enc_cacert = escapeshellarg(urlencode(str_replace("\r\n", "\n", $cabundle)));
89
- } else {
90
- $enc_cert = urlencode(str_replace("\r\n", "\n", $cert));
91
- $enc_key = urlencode(str_replace("\r\n", "\n", $key));
92
- $enc_cacert = urlencode(str_replace("\r\n", "\n", $cabundle));
93
- }
94
-
95
- if ( function_exists('shell_exec') ) {
96
- $shell = shell_exec("uapi SSL install_ssl domain=$domain cert=$enc_cert key=$enc_key cabundle=$enc_cacert");
97
- } else if (function_exists('system')) {
98
- ob_start();
99
- system("uapi SSL install_ssl domain=$domain cert=$enc_cert key=$enc_key cabundle=$enc_cacert", $var);
100
- $shell = ob_get_contents();
101
- ob_end_clean();
102
- } else if (function_exists('passthru')) {
103
- ob_start();
104
- passthru("uapi SSL install_ssl domain=$domain cert=$enc_cert key=$enc_key cabundle=$enc_cacert", $var);
105
- $shell = ob_get_contents();
106
- ob_end_clean();
107
- } else if (function_exists('exec')) {
108
- exec("uapi SSL install_ssl domain=$domain cert=$enc_cert key=$enc_key cabundle=$enc_cacert", $output, $var);
109
- $shell = implode(',', $output);
110
- }
111
-
112
- if ( empty($shell) ) {
113
- $message = rsssl_get_manual_instructions_text(RSSSL_LE()->letsencrypt_handler->ssl_installation_url);
114
- return new RSSSL_RESPONSE('error', 'skip', $message );
115
- }
116
-
117
- $shell = str_ireplace(array('<br>', '<br />', '<b>', '</b>', '\n'), array('', '', '', '', ''), $shell);
118
- $fbr = stripos(htmlentities($shell), 'domain:');
119
- $finalshell = substr(htmlentities($shell), $fbr);
120
- $line_explode = explode("\n", $finalshell);
121
-
122
- $res_arr = array();
123
- foreach ($line_explode as $item) {
124
- $res_param = explode(":", $item);
125
- $res_arr[trim($res_param[0])] = isset($res_param[1]) ? $res_param[1] : '';
126
- }
127
-
128
- if ($res_arr['status'] == 1) {
129
- $message = sprintf(__("SSL successfully installed on %s","really-simple-ssl"), $domain);
130
- return new RSSSL_RESPONSE('success', 'continue', $message );
131
- } else {
132
- $message = rsssl_get_manual_instructions_text(RSSSL_LE()->letsencrypt_handler->ssl_installation_url);
133
- return new RSSSL_RESPONSE('error', 'skip', $message );
134
- }
135
-
136
- }
137
-
138
  /**
139
  * Install SSL for all passed domains
140
  * @param array $domains
@@ -360,7 +261,6 @@ class rsssl_cPanel
360
  return new RSSSL_RESPONSE($status, $action, $message);
361
  }
362
 
363
- //legacy ??
364
  $event_result = (bool) $response_array['cpanelresult']['event']['result'];
365
  $preevent_result = isset($response_array['cpanelresult']['preevent']) ? (bool) $response_array['cpanelresult']['preevent']['result'] : true; //Some cPanel doesn't provide this key. In that case, ignore it by setting 'true'.
366
  $postevent_result = isset($response_array['cpanelresult']['postevent']) ? (bool) $response_array['cpanelresult']['postevent']['result'] : true; //Some cPanel doesn't provide this key. In that case, ignore it by setting 'true'.
36
  return false;
37
  }
38
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
  /**
40
  * Install SSL for all passed domains
41
  * @param array $domains
261
  return new RSSSL_RESPONSE($status, $action, $message);
262
  }
263
 
 
264
  $event_result = (bool) $response_array['cpanelresult']['event']['result'];
265
  $preevent_result = isset($response_array['cpanelresult']['preevent']) ? (bool) $response_array['cpanelresult']['preevent']['result'] : true; //Some cPanel doesn't provide this key. In that case, ignore it by setting 'true'.
266
  $postevent_result = isset($response_array['cpanelresult']['postevent']) ? (bool) $response_array['cpanelresult']['postevent']['result'] : true; //Some cPanel doesn't provide this key. In that case, ignore it by setting 'true'.
lets-encrypt/integrations/cpanel/functions.php CHANGED
@@ -35,33 +35,6 @@ function rsssl_install_cpanel_default(){
35
  }
36
  }
37
 
38
- function rsssl_install_cpanel_shell(){
39
-
40
- if (rsssl_is_ready_for('installation')) {
41
- $cpanel = new rsssl_cPanel();
42
- $domains = RSSSL_LE()->letsencrypt_handler->get_subjects();
43
-
44
- if ( function_exists('shell_exec') || function_exists('system') || function_exists('passthru') || function_exists('exec') ) {
45
- $response = $cpanel->installSSLShell( $domains );
46
- if ( $response->status === 'success' ) {
47
- update_option('rsssl_le_certificate_installed_by_rsssl', 'cpanel:default');
48
- }
49
- return $response;
50
- } else {
51
- $status = 'error';
52
- $action = 'skip';
53
- $message = rsssl_get_manual_instructions_text(RSSSL_LE()->letsencrypt_handler->ssl_installation_url);
54
- return new RSSSL_RESPONSE($status, $action, $message);
55
- }
56
-
57
- } else {
58
- $status = 'error';
59
- $action = 'stop';
60
- $message = __("The system is not ready for the installation yet. Please run the wizard again.", "really-simple-ssl");
61
- return new RSSSL_RESPONSE($status, $action, $message);
62
- }
63
- }
64
-
65
  function rsssl_cpanel_set_txt_record(){
66
  if ( rsssl_is_ready_for('dns-verification') ) {
67
  $cpanel = new rsssl_cPanel();
@@ -133,14 +106,6 @@ function rsssl_cpanel_add_condition_actions($steps){
133
  }
134
  }
135
 
136
- if ( function_exists('shell_exec') || function_exists('system') || function_exists('passthru') || function_exists('exec') ) {
137
- $steps['lets-encrypt'][ $installation_index ]['actions'][]
138
- = array(
139
- 'description' => __( "Attempting to install certificate using shell...", "really-simple-ssl" ),
140
- 'action' => 'rsssl_install_cpanel_shell',
141
- 'attempts' => 1,
142
- );
143
- }
144
  return $steps;
145
  }
146
 
35
  }
36
  }
37
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
38
  function rsssl_cpanel_set_txt_record(){
39
  if ( rsssl_is_ready_for('dns-verification') ) {
40
  $cpanel = new rsssl_cPanel();
106
  }
107
  }
108
 
 
 
 
 
 
 
 
 
109
  return $steps;
110
  }
111
 
lets-encrypt/integrations/plesk/CertificateInstaller.php DELETED
@@ -1,32 +0,0 @@
1
- <?php
2
- namespace PleskX\Api\Operator;
3
- require_once rsssl_le_path . 'vendor/autoload.php';
4
-
5
- use PleskX\Api\Struct\CertificateInstaller as Struct;
6
-
7
- class CertificateInstaller extends \PleskX\Api\Operator\Certificate
8
- {
9
- /**
10
- * @param array $properties
11
- *
12
- * @return Struct\Info
13
- */
14
- public function install($domains, $properties)
15
- {
16
- $packet = $this->_client->getPacket();
17
- foreach ($domains as $domain) {
18
- $install = $packet->addChild($this->_wrapperTag)->addChild('install');
19
- $install->addChild('name', $domain);
20
- $install->addChild('webspace', $domain);
21
- $content = $install->addChild('content');
22
-
23
- foreach ($properties as $name => $value) {
24
- $content->addChild($name, $value);
25
- }
26
- }
27
-
28
- $response = $this->_client->request($packet);
29
-
30
- return new Struct\Info($response);
31
- }
32
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/CHANGELOG.md DELETED
@@ -1,114 +0,0 @@
1
- ### v3.0.0
2
-
3
- **Breaking changes**
4
-
5
- - Support for custom inspect methods was removed. Please follow Node's [recommended practices](https://nodejs.org/api/util.html#util_util_inspect_custom) for creating a custom inspect method.
6
-
7
- ### v3.0.0
8
-
9
- - Completely refactored from the ground up.
10
- - For the most part, `.task`, `.build`, `.series` and `.parallel` work the same way. However, event handling has changed. Please see the readme for more information and documentation.
11
-
12
- ### v2.0.0
13
-
14
- - Now requires Node.js v4.0 or higher
15
-
16
- ### v1.0.0
17
-
18
- - Updates the events that are emitted and adds statuses to the objects emitted on the events. see issues [#20](../../issues/20) and [#21](../../issues/21)
19
- - Updates the event objects to expose human readable durations. [see issue #23](../../issues/23)
20
- - Removes unused properties. [see issue #24](../../issues/24)
21
- - Updates `.build` to return a promise when the callback is not passed in. [see issue #28](../../issues/28)
22
-
23
- ### v0.14.0
24
-
25
- - Updates [bach][] to `1.0.0`.
26
- - Errors emitted from inside a task now have the `'in task "foo":'` prefixed to the error message. [see issue #22](../../issues/22)
27
- - Expose `.runInfo` on the task object for use in event listeners and task functions.
28
- - Add `.duration` to the `.run/.runInfo` object that shows the duration in a human friendly format. This will also show the current duration from the time the task started to the time it's called if used inside a task function. [see issue #23](../../issues/23)
29
-
30
- ```js
31
- app.task('foo', function(cb) {
32
- console.log(this.runInfo.duration);
33
- });
34
- ```
35
-
36
- ### v0.13.0
37
-
38
- - Skip tasks by setting the `options.skip` option to the name of the task or an array of task names.
39
- - Making additional `err` properties non-enumerable to cut down on error output.
40
-
41
- ### v0.12.0
42
-
43
- - You can no longer get a task from the `.task()` method by passing only the name. Instead do `var task = app.tasks[name];`
44
- - Passing only a name and no dependencies to `.task()` will result in a `noop` task being created.
45
- - `options` may be passed to `.build()`, `.series()` and `.parallel()`
46
- - `options` passed to `.build()` will be merged onto task options before running the task.
47
- - Skip tasks by setting their `options.run` option to `false`.
48
-
49
- ### v0.11.3
50
-
51
- - Allow passing es2015 javascript generator functions to `.task()`.
52
-
53
- ### v0.11.2
54
-
55
- - Allow using glob patterns for task dependencies.
56
-
57
- ### v0.11.0
58
-
59
- - **BREAKING CHANGE**: Removed `.watch()`. Watch functionality can be added to [base][] applications using [base-watch][].
60
-
61
- ### v0.10.0
62
-
63
- - Removes `session`.
64
-
65
- ### v0.9.0
66
-
67
- - Use `default` when no tasks are passed to `.build()`.
68
-
69
- ### v0.8.4
70
-
71
- - Ensure task dependencies are unique.
72
-
73
- ### v0.8.2
74
-
75
- - Emitting `task` when adding a task through `.task()`
76
- - Returning task when calling `.task(name)` with only a name.
77
-
78
- ### v0.8.0
79
-
80
- - Emitting `task:*` events instead of generic `*` events. See [event docs](#events) for more information.
81
-
82
- ### v0.7.0
83
-
84
- - No longer returning the current task when `.task()` is called without a name.
85
- - Throwing an error when `.task()` is called without a name.
86
-
87
- ### v0.6.0
88
-
89
- - Adding properties to `err` instances and emitting instead of emitting multiple parameters.
90
- - Adding series and parallel flows/methods.
91
-
92
- ### v0.5.0
93
-
94
- - **BREAKING CHANGE** Renamed `.run()` to `.build()`
95
-
96
- ### v0.4.2
97
-
98
- - `.watch` returns an instance of `FSWatcher`
99
-
100
- ### v0.4.1
101
-
102
- - Currently running task returned when calling `.task()` without a name.
103
-
104
- ### v0.4.0
105
-
106
- - Add session-cache to enable per-task data contexts.
107
-
108
- ### v0.3.0
109
-
110
- - Event bubbling/emitting changed.
111
-
112
- ### v0.1.0
113
-
114
- - Initial release.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2015-present, Brian Woodward.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/README.md DELETED
@@ -1,608 +0,0 @@
1
- # composer [![NPM version](https://img.shields.io/npm/v/composer.svg?style=flat)](https://www.npmjs.com/package/composer) [![NPM monthly downloads](https://img.shields.io/npm/dm/composer.svg?style=flat)](https://npmjs.org/package/composer) [![NPM total downloads](https://img.shields.io/npm/dt/composer.svg?style=flat)](https://npmjs.org/package/composer) [![Linux Build Status](https://img.shields.io/travis/doowb/composer.svg?style=flat&label=Travis)](https://travis-ci.org/doowb/composer) [![Windows Build Status](https://img.shields.io/appveyor/ci/doowb/composer.svg?style=flat&label=AppVeyor)](https://ci.appveyor.com/project/doowb/composer)
2
-
3
- > Run and compose async tasks. Easily define groups of tasks to run in series or parallel.
4
-
5
- Please consider following this project's author, [Brian Woodward](https://github.com/doowb), and consider starring the project to show your :heart: and support.
6
-
7
- - [Install](#install)
8
- - [Usage](#usage)
9
- - [API](#api)
10
- * [Tasks](#tasks)
11
- * [Generators](#generators)
12
- - [Events](#events)
13
- * [task](#task)
14
- * [task-pending](#task-pending)
15
- * [task-preparing](#task-preparing)
16
- - [Release history](#release-history)
17
- - [About](#about)
18
-
19
- _(TOC generated by [verb](https://github.com/verbose/verb) using [markdown-toc](https://github.com/jonschlinkert/markdown-toc))_
20
-
21
- ## Install
22
-
23
- Install with [npm](https://www.npmjs.com/):
24
-
25
- ```sh
26
- $ npm install --save composer
27
- ```
28
-
29
- ## Usage
30
-
31
- ```js
32
- // Create an instance of `Composer`
33
- const Composer = require('composer');
34
- const composer = new Composer();
35
-
36
- // Define tasks with the .task() method
37
- composer.task('foo', callback => {
38
- callback(); // do stuff
39
- });
40
- composer.task('bar', callback => {
41
- callback(); // do stuff
42
- });
43
-
44
- composer.task('baz', ['foo'. 'bar']);
45
-
46
- // Run tasks with the .build() method
47
- composer.build('baz')
48
- .then(() => console.log('done!'))
49
- .catch(console.error);
50
- ```
51
-
52
- ## API
53
-
54
- ### [.factory](lib/tasks.js#L27)
55
-
56
- Factory for creating a custom `Tasks` class that extends the given `Emitter`. Or, simply call the factory function to use the built-in emitter.
57
-
58
- **Params**
59
-
60
- * `Emitter` **{function}**: Event emitter.
61
- * `returns` **{Class}**: Returns a custom `Tasks` class.
62
-
63
- **Example**
64
-
65
- ```js
66
- // custom emitter
67
- const Emitter = require('events');
68
- const Tasks = require('composer/lib/tasks')(Emitter);
69
- // built-in emitter
70
- const Tasks = require('composer/lib/tasks')();
71
- const composer = new Tasks();
72
- ```
73
-
74
- ### [Tasks](lib/tasks.js#L42)
75
-
76
- Create an instance of `Tasks` with the given `options`.
77
-
78
- **Params**
79
-
80
- * `options` **{object}**
81
-
82
- **Example**
83
-
84
- ```js
85
- const Tasks = require('composer').Tasks;
86
- const composer = new Tasks();
87
- ```
88
-
89
- ### [.task](lib/tasks.js#L86)
90
-
91
- Define a task. Tasks run asynchronously, either in series (by default) or parallel (when `options.parallel` is true). In order for the build to determine when a task is complete, _one of the following_ things must happen: 1) the callback must be called, 2) a promise must be returned, or 3) a stream must be returned. Inside tasks, the "this" object is a composer Task instance created for each task with useful properties like the task name, options and timing information, which can be useful for logging, etc.
92
-
93
- **Params**
94
-
95
- * `name` **{String}**: The task name.
96
- * `deps` **{Object|Array|String|Function}**: Any of the following: task dependencies, callback(s), or options object, defined in any order.
97
- * `callback` **{Function}**: (optional) If the last argument is a function, it will be called after all of the task's dependencies have been run.
98
- * `returns` **{undefined}**
99
-
100
- **Example**
101
-
102
- ```js
103
- // 1. callback
104
- app.task('default', cb => {
105
- // do stuff
106
- cb();
107
- });
108
- // 2. promise
109
- app.task('default', () => {
110
- return Promise.resolve(null);
111
- });
112
- // 3. stream (using vinyl-fs or your stream of choice)
113
- app.task('default', function() {
114
- return vfs.src('foo/*.js');
115
- });
116
- ```
117
-
118
- ### [.build](lib/tasks.js#L209)
119
-
120
- Run one or more tasks.
121
-
122
- **Params**
123
-
124
- * `tasks` **{object|array|string|function}**: One or more tasks to run, options, or callback function. If no tasks are defined, the default task is automatically run.
125
- * `callback` **{function}**: (optional)
126
- * `returns` **{undefined}**
127
-
128
- **Example**
129
-
130
- ```js
131
- const build = app.series(['foo', 'bar', 'baz']);
132
- // promise
133
- build().then(console.log).catch(console.error);
134
- // or callback
135
- build(function() {
136
- if (err) return console.error(err);
137
- });
138
- ```
139
-
140
- ### [.series](lib/tasks.js#L251)
141
-
142
- Compose a function to run the given tasks in series.
143
-
144
- **Params**
145
-
146
- * `tasks` **{object|array|string|function}**: Tasks to run, options, or callback function. If no tasks are defined, the `default` task is automatically run, if one exists.
147
- * `callback` **{function}**: (optional)
148
- * `returns` **{promise|undefined}**: Returns a promise if no callback is passed.
149
-
150
- **Example**
151
-
152
- ```js
153
- const build = app.series(['foo', 'bar', 'baz']);
154
- // promise
155
- build().then(console.log).catch(console.error);
156
- // or callback
157
- build(function() {
158
- if (err) return console.error(err);
159
- });
160
- ```
161
-
162
- ### [.parallel](lib/tasks.js#L304)
163
-
164
- Compose a function to run the given tasks in parallel.
165
-
166
- **Params**
167
-
168
- * `tasks` **{object|array|string|function}**: Tasks to run, options, or callback function. If no tasks are defined, the `default` task is automatically run, if one exists.
169
- * `callback` **{function}**: (optional)
170
- * `returns` **{promise|undefined}**: Returns a promise if no callback is passed.
171
-
172
- **Example**
173
-
174
- ```js
175
- // call the returned function to start the build
176
- const build = app.parallel(['foo', 'bar', 'baz']);
177
- // promise
178
- build().then(console.log).catch(console.error);
179
- // callback
180
- build(function() {
181
- if (err) return console.error(err);
182
- });
183
- // example task usage
184
- app.task('default', build);
185
- ```
186
-
187
- ### [.create](lib/tasks.js#L388)
188
-
189
- Static method for creating a custom Tasks class with the given `Emitter.
190
-
191
- **Params**
192
-
193
- * `Emitter` **{Function}**
194
- * `returns` **{Class}**: Returns the custom class.
195
-
196
- ### [.create](lib/generator.js#L30)
197
-
198
- Static factory method for creating a custom `Composer` class that extends the given `Emitter`.
199
-
200
- **Params**
201
-
202
- * `Emitter` **{Function}**: Event emitter.
203
- * `returns` **{Class}**: Returns a custom `Composer` class.
204
-
205
- **Example**
206
-
207
- ```js
208
- // Composer extends a basic event emitter by default
209
- const Composer = require('composer');
210
- const composer = new Composer();
211
-
212
- // Create a custom Composer class with your even emitter of choice
213
- const Emitter = require('some-emitter');
214
- const CustomComposer = Composer.create(Emitter);
215
- const composer = new CustomComposer();
216
- ```
217
-
218
- **Params**
219
-
220
- * `name` **{String}**
221
- * `options` **{Object}**
222
- * `returns` **{Object}**: Returns an instance of Composer.
223
-
224
- **Example**
225
-
226
- ```js
227
- const composer = new Composer();
228
- ```
229
-
230
- Create a wrapped generator function with the given `name`, `config`, and `fn`.
231
-
232
- **Params**
233
-
234
- * `name` **{String}**
235
- * `config` **{Object}**: (optional)
236
- * `fn` **{Function}**
237
- * `returns` **{Function}**
238
-
239
- Returns true if the given value is a Composer generator object.
240
-
241
- **Params**
242
-
243
- * `val` **{Object}**
244
- * `returns` **{Boolean}**
245
-
246
- ### [.register](lib/generator.js#L167)
247
-
248
- Alias to `.setGenerator`.
249
-
250
- **Params**
251
-
252
- * `name` **{String}**: The generator's name
253
- * `options` **{Object|Function|String}**: or generator
254
- * `generator` **{Object|Function|String}**: Generator function, instance or filepath.
255
- * `returns` **{Object}**: Returns the generator instance.
256
-
257
- **Example**
258
-
259
- ```js
260
- app.register('foo', function(app, base) {
261
- // "app" is a private instance created for the generator
262
- // "base" is a shared instance
263
- });
264
- ```
265
-
266
- ### [.generator](lib/generator.js#L190)
267
-
268
- Get and invoke generator `name`, or register generator `name` with the given `val` and `options`, then invoke and return the generator instance. This method differs from `.register`, which lazily invokes generator functions when `.generate` is called.
269
-
270
- **Params**
271
-
272
- * `name` **{String}**
273
- * `fn` **{Function|Object}**: Generator function, instance or filepath.
274
- * `returns` **{Object}**: Returns the generator instance or undefined if not resolved.
275
-
276
- **Example**
277
-
278
- ```js
279
- app.generator('foo', function(app, options) {
280
- // "app" - private instance created for generator "foo"
281
- // "options" - options passed to the generator
282
- });
283
- ```
284
-
285
- ### [.setGenerator](lib/generator.js#L222)
286
-
287
- Store a generator by file path or instance with the given `name` and `options`.
288
-
289
- **Params**
290
-
291
- * `name` **{String}**: The generator's name
292
- * `options` **{Object|Function|String}**: or generator
293
- * `generator` **{Object|Function|String}**: Generator function, instance or filepath.
294
- * `returns` **{Object}**: Returns the generator instance.
295
-
296
- **Example**
297
-
298
- ```js
299
- app.setGenerator('foo', function(app, options) {
300
- // "app" - new instance of Generator created for generator "foo"
301
- // "options" - options passed to the generator
302
- });
303
- ```
304
-
305
- ### [.getGenerator](lib/generator.js#L247)
306
-
307
- Get generator `name` from `app.generators`, same as [findGenerator], but also invokes the returned generator with the current instance. Dot-notation may be used for getting sub-generators.
308
-
309
- **Params**
310
-
311
- * `name` **{String}**: Generator name.
312
- * `returns` **{Object|undefined}**: Returns the generator instance or undefined.
313
-
314
- **Example**
315
-
316
- ```js
317
- const foo = app.getGenerator('foo');
318
-
319
- // get a sub-generator
320
- const baz = app.getGenerator('foo.bar.baz');
321
- ```
322
-
323
- ### [.findGenerator](lib/generator.js#L280)
324
-
325
- Find generator `name`, by first searching the cache, then searching the cache of the `base` generator. Use this to get a generator without invoking it.
326
-
327
- **Params**
328
-
329
- * `name` **{String}**
330
- * `options` **{Function}**: Optionally supply a rename function on `options.toAlias`
331
- * `returns` **{Object|undefined}**: Returns the generator instance if found, or undefined.
332
-
333
- **Example**
334
-
335
- ```js
336
- // search by "alias"
337
- const foo = app.findGenerator('foo');
338
-
339
- // search by "full name"
340
- const foo = app.findGenerator('generate-foo');
341
- ```
342
-
343
- **Params**
344
-
345
- * `name` **{String}**
346
- * `returns` **{Boolean}**
347
-
348
- **Example**
349
-
350
- ```js
351
- console.log(app.hasGenerator('foo'));
352
- console.log(app.hasGenerator('foo.bar'));
353
- ```
354
-
355
- ### [.generate](lib/generator.js#L362)
356
-
357
- Run one or more tasks or sub-generators and returns a promise.
358
-
359
- **Params**
360
-
361
- * `name` **{String}**
362
- * `tasks` **{String|Array}**
363
- * `returns` **{Promise}**
364
-
365
- **Events**
366
-
367
- * `emits`: `generate` with the generator `name` and the array of `tasks` that are queued to run.
368
-
369
- **Example**
370
-
371
- ```js
372
- // run tasks `bar` and `baz` on generator `foo`
373
- app.generate('foo', ['bar', 'baz']);
374
-
375
- // or use shorthand
376
- app.generate('foo:bar,baz');
377
-
378
- // run the `default` task on generator `foo`
379
- app.generate('foo');
380
-
381
- // run the `default` task on the `default` generator, if defined
382
- app.generate();
383
- ```
384
-
385
- ### [.toAlias](lib/generator.js#L413)
386
-
387
- Create a generator alias from the given `name`. By default, `generate-` is stripped from beginning of the generator name.
388
-
389
- **Params**
390
-
391
- * `name` **{String}**
392
- * `options` **{Object}**
393
- * `returns` **{String}**: Returns the alias.
394
-
395
- **Example**
396
-
397
- ```js
398
- // customize the alias
399
- const app = new Generate({ toAlias: require('camel-case') });
400
- ```
401
-
402
- ### [.isGenerators](lib/generator.js#L434)
403
-
404
- Returns true if every name in the given array is a registered generator.
405
-
406
- **Params**
407
-
408
- * `names` **{Array}**
409
- * `returns` **{Boolean}**
410
-
411
- ### [.formatError](lib/generator.js#L446)
412
-
413
- Format task and generator errors.
414
-
415
- **Params**
416
-
417
- * `name` **{String}**
418
- * `returns` **{Error}**
419
-
420
- ### [.disableInspect](lib/generator.js#L466)
421
-
422
- Disable inspect. Returns a function to re-enable inspect. Useful for debugging.
423
-
424
- ### [.base](lib/generator.js#L504)
425
-
426
- Get the first ancestor instance of Composer. Only works if `generator.parent` is
427
- defined on child instances.
428
-
429
- ### [.name](lib/generator.js#L517)
430
-
431
- Get or set the generator name.
432
-
433
- **Params**
434
-
435
- * **{String}**
436
-
437
- * `returns` **{String}**
438
-
439
- ### [.alias](lib/generator.js#L534)
440
-
441
- Get or set the generator `alias`. By default, the generator alias is created
442
- by passing the generator name to the [.toAlias](#toAlias) method.
443
-
444
- **Params**
445
-
446
- * **{String}**
447
-
448
- * `returns` **{String}**
449
-
450
- ### [.namespace](lib/generator.js#L551)
451
-
452
- Get the generator namespace. The namespace is created by joining the generator's `alias`
453
- to the alias of each ancestor generator.
454
-
455
- **Params**
456
-
457
- * **{String}**
458
-
459
- * `returns` **{String}**
460
-
461
- ### [.depth](lib/generator.js#L564)
462
-
463
- Get the depth of a generator - useful for debugging. The root generator
464
- has a depth of `0`, sub-generators add `1` for each level of nesting.
465
-
466
- * `returns` **{Number}**
467
-
468
- ### [Composer#parse](lib/generator.js#L577)
469
-
470
- Static method that returns a function for parsing task arguments.
471
-
472
- **Params**
473
-
474
- * `register` **{Function}**: Function that receives a name of a task or generator that cannot be found by the parse function. This allows the `register` function to dynamically register tasks or generators.
475
- * `returns` **{Function}**: Returns a function for parsing task args.
476
-
477
- ### [Composer#isGenerator](lib/generator.js#L590)
478
-
479
- Static method that returns true if the given `val` is an instance of Generate.
480
-
481
- **Params**
482
-
483
- * `val` **{Object}**
484
- * `returns` **{Boolean}**
485
-
486
- ### [Composer#create](lib/generator.js#L603)
487
-
488
- Static method for creating a custom Composer class with the given `Emitter.
489
-
490
- **Params**
491
-
492
- * `Emitter` **{Function}**
493
- * `returns` **{Class}**: Returns the custom class.
494
-
495
- ### [Composer#Tasks](lib/generator.js#L617)
496
-
497
- Static getter for getting the Tasks class with the same `Emitter` class as Composer.
498
-
499
- **Params**
500
-
501
- * `Emitter` **{Function}**
502
- * `returns` **{Class}**: Returns the Tasks class.
503
-
504
- ### [Composer#Task](lib/generator.js#L633)
505
-
506
- Static getter for getting the `Task` class.
507
-
508
- **Example**
509
-
510
- ```js
511
- const { Task } = require('composer');
512
- ```
513
-
514
- ## Events
515
-
516
- ### task
517
-
518
- ```js
519
- app.on('task', function(task) {
520
- switch (task.status) {
521
- case 'starting':
522
- // Task is running
523
- break;
524
- case 'finished':
525
- // Task is finished running
526
- break;
527
- }
528
- });
529
- ```
530
-
531
- ### task-pending
532
-
533
- Emitted after a task is registered.
534
-
535
- ### task-preparing
536
-
537
- Emitted when a task is preparing to run, right before it's called. You can use this event to dynamically skip tasks by updating `task.skip` to `true` or a function.
538
-
539
- ## Release history
540
-
541
- See the [changelog](./CHANGELOG.md).
542
-
543
- ## About
544
-
545
- <details>
546
- <summary><strong>Contributing</strong></summary>
547
-
548
- Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
549
-
550
- </details>
551
-
552
- <details>
553
- <summary><strong>Running Tests</strong></summary>
554
-
555
- Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
556
-
557
- ```sh
558
- $ npm install && npm test
559
- ```
560
-
561
- </details>
562
-
563
- <details>
564
- <summary><strong>Building docs</strong></summary>
565
-
566
- _(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
567
-
568
- To generate the readme, run the following command:
569
-
570
- ```sh
571
- $ npm install -g verbose/verb#dev verb-generate-readme && verb
572
- ```
573
-
574
- </details>
575
-
576
- ### Related projects
577
-
578
- You might also be interested in these projects:
579
-
580
- * [assemble](https://www.npmjs.com/package/assemble): Get the rocks out of your socks! Assemble makes you fast at creating web projects… [more](https://github.com/assemble/assemble) | [homepage](https://github.com/assemble/assemble "Get the rocks out of your socks! Assemble makes you fast at creating web projects. Assemble is used by thousands of projects for rapid prototyping, creating themes, scaffolds, boilerplates, e-books, UI components, API documentation, blogs, building websit")
581
- * [enquirer](https://www.npmjs.com/package/enquirer): Stylish, intuitive and user-friendly prompt system. Fast and lightweight enough for small projects, powerful and… [more](https://github.com/enquirer/enquirer) | [homepage](https://github.com/enquirer/enquirer "Stylish, intuitive and user-friendly prompt system. Fast and lightweight enough for small projects, powerful and extensible enough for the most advanced use cases.")
582
- * [generate](https://www.npmjs.com/package/generate): Command line tool and developer framework for scaffolding out new GitHub projects. Generate offers the… [more](https://github.com/generate/generate) | [homepage](https://github.com/generate/generate "Command line tool and developer framework for scaffolding out new GitHub projects. Generate offers the robustness and configurability of Yeoman, the expressiveness and simplicity of Slush, and more powerful flow control and composability than either.")
583
- * [update](https://www.npmjs.com/package/update): Be scalable! Update is a new, open source developer framework and CLI for automating updates… [more](https://github.com/update/update) | [homepage](https://github.com/update/update "Be scalable! Update is a new, open source developer framework and CLI for automating updates of any kind in code projects.")
584
- * [verb](https://www.npmjs.com/package/verb): Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used… [more](https://github.com/verbose/verb) | [homepage](https://github.com/verbose/verb "Documentation generator for GitHub projects. Verb is extremely powerful, easy to use, and is used on hundreds of projects of all sizes to generate everything from API docs to readmes.")
585
-
586
- ### Contributors
587
-
588
- | **Commits** | **Contributor** |
589
- | --- | --- |
590
- | 227 | [doowb](https://github.com/doowb) |
591
- | 72 | [jonschlinkert](https://github.com/jonschlinkert) |
592
-
593
- ### Author
594
-
595
- **Brian Woodward**
596
-
597
- * [GitHub Profile](https://github.com/doowb)
598
- * [Twitter Profile](https://twitter.com/doowb)
599
- * [LinkedIn Profile](https://linkedin.com/in/woodwardbrian)
600
-
601
- ### License
602
-
603
- Copyright © 2018, [Brian Woodward](https://github.com/doowb).
604
- Released under the [MIT License](LICENSE).
605
-
606
- ***
607
-
608
- _This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on November 11, 2018._
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/index.js DELETED
@@ -1 +0,0 @@
1
- module.exports = require('./lib/generator');
 
lets-encrypt/node_modules/composer/lib/generator.js DELETED
@@ -1,645 +0,0 @@
1
- 'use strict';
2
-
3
- const util = require('util');
4
- const Task = require('./task');
5
- const Tasks = require('./tasks');
6
- const parse = require('./parse');
7
- const Events = require('events');
8
- const { define } = require('./utils');
9
-
10
- /**
11
- * Static factory method for creating a custom `Composer` class that
12
- * extends the given `Emitter`.
13
- *
14
- * ```js
15
- * // Composer extends a basic event emitter by default
16
- * const Composer = require('composer');
17
- * const composer = new Composer();
18
- *
19
- * // Create a custom Composer class with your even emitter of choice
20
- * const Emitter = require('some-emitter');
21
- * const CustomComposer = Composer.create(Emitter);
22
- * const composer = new CustomComposer();
23
- * ```
24
- * @name .create
25
- * @param {Function} `Emitter` Event emitter.
26
- * @return {Class} Returns a custom `Composer` class.
27
- * @api public
28
- */
29
-
30
- const factory = (Emitter = Events) => {
31
-
32
- /**
33
- * Create a new instance of Composer.
34
- *
35
- * ```js
36
- * const composer = new Composer();
37
- * ```
38
- * @extends EventEmitter
39
- * @param {String} `name`
40
- * @param {Object} `options`
41
- * @return {Object} Returns an instance of Composer.
42
- * @api public
43
- */
44
-
45
- class Generator extends Tasks.create(Emitter) {
46
- constructor(name, options = {}) {
47
- if (name && typeof name !== 'string') {
48
- options = name;
49
- name = void 0;
50
- }
51
- // ensure that options aren't passed to generic
52
- // emitter to prevent unintended side-effects
53
- super(!/(Event)?Emitter/i.test(Emitter.name) ? options : null);
54
- if (this.setMaxListeners) this.setMaxListeners(0);
55
- this.name = name;
56
- this.options = options;
57
- this.namespaces = new Map();
58
- this.generators = new Map();
59
- this.isGenerate = true;
60
- if (!this.use) {
61
- require('use')(this);
62
- }
63
- }
64
-
65
- /**
66
- * Create a wrapped generator function with the given `name`, `config`, and `fn`.
67
- *
68
- * @param {String} `name`
69
- * @param {Object} `config` (optional)
70
- * @param {Function} `fn`
71
- * @return {Function}
72
- * @api public
73
- */
74
-
75
- toGenerator(name, config, fn) {
76
- if (typeof config === 'function' || this.isGenerator(config)) {
77
- fn = config;
78
- config = fn || {};
79
- }
80
-
81
- let alias = this.toAlias(name);
82
- let generator = options => {
83
- if (generator.instance && generator.once !== false) {
84
- return generator.instance;
85
- }
86
-
87
- let opts = Object.assign({}, config, options);
88
- let app = this.isGenerator(fn) ? fn : new this.constructor(opts);
89
- this.run(app);
90
-
91
- generator.instance = app;
92
- generator.called++;
93
- fn.called = generator.called;
94
-
95
- app.createGenerator = generator;
96
- app.alias = alias;
97
- app.name = name;
98
- app.fn = fn;
99
-
100
- define(app, 'parent', this);
101
- this.emit('generator', app);
102
-
103
- // emit errors that happen on initialization
104
- let listeners = {};
105
- let bubble = events => {
106
- for (let name of events) {
107
- let listener = listeners[name] || (listeners[name] = this.emit.bind(this, name));
108
- app.off(name, listener);
109
- app.on(name, listener);
110
- }
111
- };
112
-
113
- bubble(['error', 'task', 'build', 'plugin']);
114
-
115
- if (typeof fn === 'function') {
116
- fn.call(app, app, opts);
117
- // re-register emitters that we just registered a few lines ago,
118
- // to ensure that errors are bubbled up in the correct order
119
- bubble(['error', 'task', 'build', 'plugin']);
120
- }
121
-
122
- if (opts && opts.once === false) {
123
- generator.once = false;
124
- }
125
- return app;
126
- };
127
-
128
- define(generator, 'name', alias);
129
- define(generator, 'parent', this);
130
- define(generator, 'instance', null);
131
- generator.called = 0;
132
- generator.isGenerator = true;
133
- generator.alias = alias;
134
- generator.fn = fn;
135
- return generator;
136
- }
137
-
138
- /**
139
- * Returns true if the given value is a Composer generator object.
140
- *
141
- * @param {Object} `val`
142
- * @return {Boolean}
143
- * @api public
144
- */
145
-
146
- isGenerator(val) {
147
- return this.constructor.isGenerator(val);
148
- }
149
-
150
- /**
151
- * Alias to `.setGenerator`.
152
- *
153
- * ```js
154
- * app.register('foo', function(app, base) {
155
- * // "app" is a private instance created for the generator
156
- * // "base" is a shared instance
157
- * });
158
- * ```
159
- * @name .register
160
- * @param {String} `name` The generator's name
161
- * @param {Object|Function|String} `options` or generator
162
- * @param {Object|Function|String} `generator` Generator function, instance or filepath.
163
- * @return {Object} Returns the generator instance.
164
- * @api public
165
- */
166
-
167
- register(...args) {
168
- return this.setGenerator(...args);
169
- }
170
-
171
- /**
172
- * Get and invoke generator `name`, or register generator `name` with
173
- * the given `val` and `options`, then invoke and return the generator
174
- * instance. This method differs from `.register`, which lazily invokes
175
- * generator functions when `.generate` is called.
176
- *
177
- * ```js
178
- * app.generator('foo', function(app, options) {
179
- * // "app" - private instance created for generator "foo"
180
- * // "options" - options passed to the generator
181
- * });
182
- * ```
183
- * @name .generator
184
- * @param {String} `name`
185
- * @param {Function|Object} `fn` Generator function, instance or filepath.
186
- * @return {Object} Returns the generator instance or undefined if not resolved.
187
- * @api public
188
- */
189
-
190
- generator(name, options, fn) {
191
- if (typeof options === 'function') {
192
- fn = options;
193
- options = {};
194
- }
195
-
196
- if (typeof fn !== 'function') {
197
- return this.getGenerator(name, options);
198
- }
199
-
200
- this.setGenerator(name, options, fn);
201
- return this.getGenerator(name);
202
- }
203
-
204
- /**
205
- * Store a generator by file path or instance with the given
206
- * `name` and `options`.
207
- *
208
- * ```js
209
- * app.setGenerator('foo', function(app, options) {
210
- * // "app" - new instance of Generator created for generator "foo"
211
- * // "options" - options passed to the generator
212
- * });
213
- * ```
214
- * @name .setGenerator
215
- * @param {String} `name` The generator's name
216
- * @param {Object|Function|String} `options` or generator
217
- * @param {Object|Function|String} `generator` Generator function, instance or filepath.
218
- * @return {Object} Returns the generator instance.
219
- * @api public
220
- */
221
-
222
- setGenerator(name, options, fn) {
223
- const generator = this.toGenerator(name, options, fn);
224
- const alias = generator.alias;
225
- this.base.namespaces.set(`${this.namespace}.${alias}`, generator);
226
- this.generators.set(alias, generator);
227
- return this;
228
- }
229
-
230
- /**
231
- * Get generator `name` from `app.generators`, same as [findGenerator], but also invokes
232
- * the returned generator with the current instance. Dot-notation may be used for getting
233
- * sub-generators.
234
- *
235
- * ```js
236
- * const foo = app.getGenerator('foo');
237
- *
238
- * // get a sub-generator
239
- * const baz = app.getGenerator('foo.bar.baz');
240
- * ```
241
- * @name .getGenerator
242
- * @param {String} `name` Generator name.
243
- * @return {Object|undefined} Returns the generator instance or undefined.
244
- * @api public
245
- */
246
-
247
- getGenerator(name, options) {
248
- const fn = this.findGenerator(name);
249
-
250
- if (!this.isGenerator(fn)) {
251
- throw this.formatError(name);
252
- }
253
-
254
- if (typeof fn === 'function') {
255
- // return the generator instance if one has already created,
256
- // otherwise call the generator function with the parent instance
257
- return fn.instance || fn.call(fn.parent, options);
258
- }
259
- return fn;
260
- }
261
-
262
- /**
263
- * Find generator `name`, by first searching the cache, then searching the
264
- * cache of the `base` generator. Use this to get a generator without invoking it.
265
- *
266
- * ```js
267
- * // search by "alias"
268
- * const foo = app.findGenerator('foo');
269
- *
270
- * // search by "full name"
271
- * const foo = app.findGenerator('generate-foo');
272
- * ```
273
- * @name .findGenerator
274
- * @param {String} `name`
275
- * @param {Function} `options` Optionally supply a rename function on `options.toAlias`
276
- * @return {Object|undefined} Returns the generator instance if found, or undefined.
277
- * @api public
278
- */
279
-
280
- findGenerator(name) {
281
- if (!name) return null;
282
- let cached = this.base.namespaces.get(name);
283
- let names = [];
284
- let app = this;
285
-
286
- if (this.isGenerator(cached)) {
287
- return cached;
288
- }
289
-
290
- names = typeof name === 'string'
291
- ? name.split('.').map(n => this.toAlias(n))
292
- : name;
293
-
294
- let key = names.join('.');
295
-
296
- if (names.length === 1) {
297
- app = this.generators.get(key);
298
-
299
- } else {
300
- do {
301
- let alias = names.shift();
302
- let gen = app.generators.get(alias);
303
-
304
- if (!this.isGenerator(gen)) {
305
- return null;
306
- }
307
-
308
- // only invoke the generator if it's not the last one
309
- if (names.length) {
310
- app = gen.instance || app.getGenerator(alias);
311
- } else {
312
- app = gen;
313
- }
314
-
315
- } while (app && names.length);
316
- }
317
-
318
- return this.isGenerator(app) ? app : null;
319
- }
320
-
321
- /**
322
- * Returns true if the given name is a registered generator. Dot-notation may be
323
- * used to check for sub-generators.
324
- *
325
- * ```js
326
- * console.log(app.hasGenerator('foo'));
327
- * console.log(app.hasGenerator('foo.bar'));
328
- * ```
329
- * @param {String} `name`
330
- * @return {Boolean}
331
- * @api public
332
- */
333
-
334
- hasGenerator(name) {
335
- return this.findGenerator(name) != null;
336
- }
337
-
338
- /**
339
- * Run one or more tasks or sub-generators and returns a promise.
340
- *
341
- * ```js
342
- * // run tasks `bar` and `baz` on generator `foo`
343
- * app.generate('foo', ['bar', 'baz']);
344
- *
345
- * // or use shorthand
346
- * app.generate('foo:bar,baz');
347
- *
348
- * // run the `default` task on generator `foo`
349
- * app.generate('foo');
350
- *
351
- * // run the `default` task on the `default` generator, if defined
352
- * app.generate();
353
- * ```
354
- * @name .generate
355
- * @emits `generate` with the generator `name` and the array of `tasks` that are queued to run.
356
- * @param {String} `name`
357
- * @param {String|Array} `tasks`
358
- * @return {Promise}
359
- * @api public
360
- */
361
-
362
- async generate(...args) {
363
- let parsed = this.parseTasks(...args);
364
- let { tasks, missing, options, callback } = parsed;
365
-
366
- let promise = new Promise(async(resolve, reject) => {
367
- if (missing.length > 0) {
368
- reject(new Error('Invalid task(s) or generator(s): ' + missing.join(', ')));
369
- return;
370
- }
371
-
372
- let generator = name => {
373
- let app = this.hasGenerator(name) ? this.getGenerator(name, options) : this;
374
- this.emit('generate', app);
375
- return app;
376
- };
377
-
378
- if (options.parallel === true) {
379
- let pending = [];
380
- for (let ele of tasks) pending.push(generator(ele.name).build(ele.tasks));
381
- Promise.all(pending).then(resolve).catch(reject);
382
- } else {
383
- for (let ele of tasks) {
384
- await generator(ele.name).build(ele.tasks).catch(reject);
385
- }
386
- resolve();
387
- }
388
- });
389
-
390
- if (typeof callback === 'function') {
391
- promise.then(() => callback()).catch(callback);
392
- return;
393
- }
394
-
395
- return promise;
396
- }
397
-
398
- /**
399
- * Create a generator alias from the given `name`. By default, `generate-`
400
- * is stripped from beginning of the generator name.
401
- *
402
- * ```js
403
- * // customize the alias
404
- * const app = new Generate({ toAlias: require('camel-case') });
405
- * ```
406
- * @name .toAlias
407
- * @param {String} `name`
408
- * @param {Object} `options`
409
- * @return {String} Returns the alias.
410
- * @api public
411
- */
412
-
413
- toAlias(name, options) {
414
- if (typeof options === 'function') {
415
- return options(name);
416
- }
417
- if (options && typeof options.toAlias === 'function') {
418
- return options.toAlias(name);
419
- }
420
- if (typeof this.options.toAlias === 'function') {
421
- return this.options.toAlias(name);
422
- }
423
- return name ? name.replace(/^generate-/, '') : '';
424
- }
425
-
426
- /**
427
- * Returns true if every name in the given array is a registered generator.
428
- * @name .isGenerators
429
- * @param {Array} `names`
430
- * @return {Boolean}
431
- * @api public
432
- */
433
-
434
- isGenerators(names) {
435
- return names.every(name => this.hasGenerator(name));
436
- }
437
-
438
- /**
439
- * Format task and generator errors.
440
- * @name .formatError
441
- * @param {String} `name`
442
- * @return {Error}
443
- * @api public
444
- */
445
-
446
- formatError(name, type = 'generator', appname = 'generator') {
447
- let key = this.namespace || 'default';
448
- let suffix = '.';
449
-
450
- // if not the base instance, remove the first name segment
451
- if (this !== this.base) {
452
- key = key.split('.').slice(1).join('.');
453
- suffix = ` on ${appname} "${key}"`;
454
- }
455
-
456
- let message = `${type} "${name}" is not registered`;
457
- return new Error(message + suffix);
458
- }
459
-
460
- /**
461
- * Disable inspect. Returns a function to re-enable inspect. Useful for debugging.
462
- * @name .disableInspect
463
- * @api public
464
- */
465
-
466
- disableInspect() {
467
- let inspect = this[util.inspect.custom];
468
- this[util.inspect.custom] = void 0;
469
-
470
- return () => {
471
- define(this, util.inspect.custom, inspect);
472
- };
473
- }
474
-
475
- /**
476
- * Parse task arguments into an array of task configuration objects.
477
- */
478
-
479
- parseTasks(...args) {
480
- return parse(this.options.register)(this, ...args);
481
- }
482
-
483
- /**
484
- * Custom inspect function
485
- */
486
-
487
- [util.inspect.custom]() {
488
- if (typeof this.options.inspectFn === 'function') {
489
- return this.options.inspectFn(this);
490
- }
491
- const names = this.generators ? [...this.generators.keys()].join(', ') : '';
492
- const tasks = this.tasks ? [...this.tasks.keys()].join(', ') : '';
493
- return `<Generator "${this.namespace}" tasks: [${tasks}], generators: [${names}]>`;
494
- }
495
-
496
- /**
497
- * Get the first ancestor instance of Composer. Only works if `generator.parent` is
498
- * defined on child instances.
499
- * @name .base
500
- * @getter
501
- * @api public
502
- */
503
-
504
- get base() {
505
- return this.parent ? this.parent.base : this;
506
- }
507
-
508
- /**
509
- * Get or set the generator name.
510
- * @name .name
511
- * @getter
512
- * @param {String} [name="root"]
513
- * @return {String}
514
- * @api public
515
- */
516
-
517
- set name(val) {
518
- define(this, '_name', val);
519
- }
520
- get name() {
521
- return this._name || 'generate';
522
- }
523
-
524
- /**
525
- * Get or set the generator `alias`. By default, the generator alias is created
526
- * by passing the generator name to the [.toAlias](#toAlias) method.
527
- * @name .alias
528
- * @getter
529
- * @param {String} [alias="generate"]
530
- * @return {String}
531
- * @api public
532
- */
533
-
534
- set alias(val) {
535
- define(this, '_alias', val);
536
- }
537
- get alias() {
538
- return this._alias || this.toAlias(this.name, this.options);
539
- }
540
-
541
- /**
542
- * Get the generator namespace. The namespace is created by joining the generator's `alias`
543
- * to the alias of each ancestor generator.
544
- * @name .namespace
545
- * @getter
546
- * @param {String} [namespace="root"]
547
- * @return {String}
548
- * @api public
549
- */
550
-
551
- get namespace() {
552
- return this.parent ? this.parent.namespace + '.' + this.alias : this.alias;
553
- }
554
-
555
- /**
556
- * Get the depth of a generator - useful for debugging. The root generator
557
- * has a depth of `0`, sub-generators add `1` for each level of nesting.
558
- * @name .depth
559
- * @getter
560
- * @return {Number}
561
- * @api public
562
- */
563
-
564
- get depth() {
565
- return this.parent ? this.parent.depth + 1 : 0;
566
- }
567
-
568
- /**
569
- * Static method that returns a function for parsing task arguments.
570
- * @name Composer#parse
571
- * @param {Function} `register` Function that receives a name of a task or generator that cannot be found by the parse function. This allows the `register` function to dynamically register tasks or generators.
572
- * @return {Function} Returns a function for parsing task args.
573
- * @api public
574
- * @static
575
- */
576
-
577
- static parseTasks(register) {
578
- return parse(register);
579
- }
580
-
581
- /**
582
- * Static method that returns true if the given `val` is an instance of Generate.
583
- * @name Composer#isGenerator
584
- * @param {Object} `val`
585
- * @return {Boolean}
586
- * @api public
587
- * @static
588
- */
589
-
590
- static isGenerator(val) {
591
- return val instanceof this || (typeof val === 'function' && val.isGenerator === true);
592
- }
593
-
594
- /**
595
- * Static method for creating a custom Composer class with the given `Emitter.
596
- * @name Composer#create
597
- * @param {Function} `Emitter`
598
- * @return {Class} Returns the custom class.
599
- * @static
600
- * @api public
601
- */
602
-
603
- static create(Emitter) {
604
- return factory(Emitter);
605
- }
606
-
607
- /**
608
- * Static getter for getting the Tasks class with the same `Emitter` class as Composer.
609
- * @name Composer#Tasks
610
- * @param {Function} `Emitter`
611
- * @return {Class} Returns the Tasks class.
612
- * @getter
613
- * @static
614
- * @api public
615
- */
616
-
617
- static get Tasks() {
618
- return Tasks.create(Emitter);
619
- }
620
-
621
- /**
622
- * Static getter for getting the `Task` class.
623
- *
624
- * ```js
625
- * const { Task } = require('composer');
626
- * ```
627
- * @name Composer#Task
628
- * @getter
629
- * @static
630
- * @api public
631
- */
632
-
633
- static get Task() {
634
- return Task;
635
- }
636
- }
637
-
638
- return Generator;
639
- };
640
-
641
- /**
642
- * Expose `factory` function
643
- */
644
-
645
- module.exports = factory();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/lib/parse.js DELETED
@@ -1,89 +0,0 @@
1
- 'use strict';
2
-
3
- const { isObject } = require('./utils');
4
- const noop = () => {};
5
-
6
- /**
7
- * Parse task expressions from the argv._ (splat) array
8
- */
9
-
10
- module.exports = (register = noop) => {
11
- return function parse(app, ...rest) {
12
- if (rest.length === 1 && Array.isArray(rest[0])) rest = rest[0];
13
- let options = rest.find(val => isObject(val) && val.isTask !== true);
14
- rest = rest.filter(val => val !== options);
15
-
16
- let callback = rest.find(val => typeof val === 'function');
17
- let args = rest.filter(val => val !== options && val !== callback);
18
- let opts = { ...app.options, ...options };
19
-
20
- if (typeof args[0] === 'string' && Array.isArray(args[1])) {
21
- args = [args[0] + ':' + args[1].join(',')];
22
- }
23
-
24
- args = args.join(' ').split(' ');
25
- let missing = [];
26
- let result = [];
27
-
28
- for (const arg of args) {
29
- let segs = arg.split(':');
30
- if (segs.length > 2) {
31
- throw new SyntaxError('spaces must be used to separate multiple generator names');
32
- }
33
-
34
- let tasks = segs[1] ? segs[1].split(',') : segs[0].split(',');
35
- let name = segs[1] ? segs[0] : null;
36
- let task = { name: null, tasks: [] };
37
-
38
- tasks.forEach(val => {
39
- if (!app.tasks.has(val) && app.hasGenerator(name + '.' + val)) {
40
- result.push({ name: [name, val].join('.'), tasks: ['default'] });
41
- tasks = tasks.filter(v => v !== val);
42
- }
43
- });
44
-
45
- if (segs.length === 2 && tasks.length) {
46
- task.name = name;
47
- task.tasks = tasks;
48
- result.push(task);
49
- continue;
50
- }
51
-
52
- for (let key of tasks) {
53
- if ((!app.tasks.has(key) || app.taskStack.has(key)) && app.hasGenerator(key)) {
54
- if (app.name === 'default' && !key.startsWith('default.')) {
55
- key = `default.${key}`;
56
- }
57
- result.push({ name: key, tasks: ['default' ]});
58
- } else if (key && app.tasks.has(key)) {
59
- task.name = 'default';
60
- task.tasks.push(key);
61
- } else if (key) {
62
- missing.push(key);
63
- }
64
- }
65
-
66
- if (task.name) {
67
- result.push(task);
68
- }
69
- }
70
-
71
- if (rest.length && !result.length && app.name !== 'default') {
72
- if (app.hasGenerator('default')) {
73
- return parse(app.getGenerator('default'), ...rest);
74
- }
75
- }
76
-
77
- if (!rest.length && !result.length && !missing.length) {
78
- result = [{ name: 'default', tasks: ['default'] }];
79
- }
80
-
81
- if (missing.length && register(missing) === true) {
82
- return parse(app, ...rest);
83
- }
84
-
85
- register(result.map(task => task.name));
86
-
87
- return { options: opts, callback, tasks: result, missing };
88
- };
89
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/lib/task.js DELETED
@@ -1,131 +0,0 @@
1
- 'use strict';
2
-
3
- const util = require('util');
4
- const Events = require('events');
5
- const Timer = require('./timer');
6
- const { define, noop } = require('./utils');
7
-
8
- class Task extends Events {
9
- constructor(task = {}) {
10
- if (typeof task.name !== 'string') {
11
- throw new TypeError('expected task name to be a string');
12
- }
13
- super();
14
- define(this, 'isTask', true);
15
- define(this, 'app', task.app);
16
- this.name = task.name;
17
- this.status = 'pending';
18
- this.options = Object.assign({ deps: [] }, task.options);
19
- this.callback = task.callback || noop;
20
- this.deps = [...task.deps || [], ...this.options.deps];
21
- this.time = new Timer();
22
- if (this.setMaxListeners) {
23
- this.setMaxListeners(0);
24
- }
25
- }
26
-
27
- [util.inspect.custom]() {
28
- return `<Task "${this.name}" deps: [${this.deps.join(', ')}]>`;
29
- }
30
-
31
- run(options) {
32
- let finished = false;
33
- let orig = Object.assign({}, this.options);
34
- this.options = Object.assign({}, this.options, options);
35
- this.status = 'preparing';
36
- this.emit('preparing', this);
37
-
38
- if (this.skip(options)) {
39
- return () => Promise.resolve(null);
40
- }
41
-
42
- this.time = new Timer();
43
- this.time.start();
44
- this.status = 'starting';
45
- this.emit('starting', this);
46
-
47
- return () => new Promise(async(resolve, reject) => {
48
- const finish = (err, value) => {
49
- if (finished) return;
50
- finished = true;
51
- try {
52
- this.options = orig;
53
- this.time.end();
54
- this.status = 'finished';
55
- this.emit('finished', this);
56
- if (err) {
57
- define(err, 'task', this);
58
- reject(err);
59
- this.emit('error', err);
60
- } else {
61
- resolve(value);
62
- }
63
- } catch (err) {
64
- reject(err);
65
- }
66
- };
67
-
68
- try {
69
- if (typeof this.callback !== 'function') {
70
- finish();
71
- return;
72
- }
73
-
74
- let res = this.callback.call(this, finish);
75
- if (res instanceof Promise) {
76
- let val = await res;
77
- if (val) res = val;
78
- }
79
-
80
- if (isEmitter(res)) {
81
- res.on('error', finish);
82
- res.on('finish', finish);
83
- res.on('end', finish);
84
- return;
85
- }
86
-
87
- if (this.callback.length === 0) {
88
- if (res && res.then) {
89
- res.then(() => finish());
90
- } else {
91
- finish(null, res);
92
- }
93
- }
94
-
95
- } catch (err) {
96
- finish(err);
97
- }
98
- });
99
- }
100
-
101
- skip(options) {
102
- let app = this.app || {};
103
- let opts = Object.assign({}, app.options, this.options, options);
104
-
105
- if (opts.run === false) {
106
- return true;
107
- }
108
-
109
- if (Array.isArray(opts.skip)) {
110
- return opts.skip.includes(this.name);
111
- }
112
-
113
- switch (typeof opts.skip) {
114
- case 'boolean':
115
- return opts.skip === true;
116
- case 'function':
117
- return opts.skip(this) === true;
118
- case 'string':
119
- return opts.skip === this.name;
120
- default: {
121
- return false;
122
- }
123
- }
124
- }
125
- }
126
-
127
- function isEmitter(val) {
128
- return val && (typeof val.on === 'function' || typeof val.pipe === 'function');
129
- }
130
-
131
- module.exports = Task;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/lib/tasks.js DELETED
@@ -1,409 +0,0 @@
1
- 'use strict';
2
-
3
- const Task = require('./task');
4
- const Timer = require('./timer');
5
- const Events = require('events');
6
- const { createOptions, flatten, noop } = require('./utils');
7
-
8
- /**
9
- * Factory for creating a custom `Tasks` class that extends the
10
- * given `Emitter`. Or, simply call the factory function to use
11
- * the built-in emitter.
12
- *
13
- * ```js
14
- * // custom emitter
15
- * const Emitter = require('events');
16
- * const Tasks = require('composer/lib/tasks')(Emitter);
17
- * // built-in emitter
18
- * const Tasks = require('composer/lib/tasks')();
19
- * const composer = new Tasks();
20
- * ```
21
- * @name .factory
22
- * @param {function} `Emitter` Event emitter.
23
- * @return {Class} Returns a custom `Tasks` class.
24
- * @api public
25
- */
26
-
27
- const factory = (Emitter = Events) => {
28
-
29
- /**
30
- * Create an instance of `Tasks` with the given `options`.
31
- *
32
- * ```js
33
- * const Tasks = require('composer').Tasks;
34
- * const composer = new Tasks();
35
- * ```
36
- * @class
37
- * @name Tasks
38
- * @param {object} `options`
39
- * @api public
40
- */
41
-
42
- class Tasks extends Emitter {
43
- constructor(options = {}) {
44
- super(!Emitter.name.includes('Emitter') ? options : null);
45
- this.options = options;
46
- this.taskStack = new Map();
47
- this.tasks = new Map();
48
- this.taskId = 0;
49
-
50
- if (this.off === void 0 && typeof this.removeListener === 'function') {
51
- this.off = this.removeListener.bind(this);
52
- }
53
- }
54
-
55
- /**
56
- * Define a task. Tasks run asynchronously, either in series (by default) or parallel
57
- * (when `options.parallel` is true). In order for the build to determine when a task is
58
- * complete, _one of the following_ things must happen: 1) the callback must be called, 2) a
59
- * promise must be returned, or 3) a stream must be returned. Inside tasks, the "this"
60
- * object is a composer Task instance created for each task with useful properties like
61
- * the task name, options and timing information, which can be useful for logging, etc.
62
- *
63
- * ```js
64
- * // 1. callback
65
- * app.task('default', cb => {
66
- * // do stuff
67
- * cb();
68
- * });
69
- * // 2. promise
70
- * app.task('default', () => {
71
- * return Promise.resolve(null);
72
- * });
73
- * // 3. stream (using vinyl-fs or your stream of choice)
74
- * app.task('default', function() {
75
- * return vfs.src('foo/*.js');
76
- * });
77
- * ```
78
- * @name .task
79
- * @param {String} `name` The task name.
80
- * @param {Object|Array|String|Function} `deps` Any of the following: task dependencies, callback(s), or options object, defined in any order.
81
- * @param {Function} `callback` (optional) If the last argument is a function, it will be called after all of the task's dependencies have been run.
82
- * @return {undefined}
83
- * @api public
84
- */
85
-
86
- task(name, ...rest) {
87
- if (typeof name !== 'string') {
88
- throw new TypeError('expected task "name" to be a string');
89
- }
90
- const { options, tasks } = createOptions(this, false, ...rest);
91
- const callback = typeof tasks[tasks.length - 1] === 'function' ? tasks.pop() : noop;
92
- return this.setTask(name, options, tasks, callback);
93
- }
94
-
95
- /**
96
- * Set a task on `app.tasks`
97
- * @name .setTask
98
- * @param {string} name Task name
99
- * @param {object} name Task options
100
- * @param {object|array|string|function} `deps` Task dependencies
101
- * @param {Function} `callback` (optional) Final callback function to call after all task dependencies have been run.
102
- * @return {object} Returns the instance.
103
- */
104
-
105
- setTask(name, options = {}, deps = [], callback) {
106
- const task = new Task({ name, options, deps, callback, app: this });
107
- const emit = (key = 'task') => this.emit(key, task);
108
- task.on('error', this.emit.bind(this, 'error'));
109
- task.on('preparing', () => emit('task-preparing'));
110
- task.on('starting', task => {
111
- this.taskStack.set(task.name, task);
112
- emit();
113
- });
114
- task.on('finished', task => {
115
- this.taskStack.delete(task.name);
116
- emit();
117
- });
118
- this.tasks.set(name, task);
119
- task.status = 'registered';
120
- emit('task-registered');
121
- return this;
122
- }
123
-
124
- /**
125
- * Get a task from `app.tasks`.
126
- * @name .getTask
127
- * @param {string} name
128
- * @return {object} Returns the task object.
129
- */
130
-
131
- getTask(name) {
132
- if (!this.tasks.has(name)) {
133
- throw this.formatError(name, 'task');
134
- }
135
- return this.tasks.get(name);
136
- }
137
-
138
- /**
139
- * Returns true if all values in the array are registered tasks.
140
- * @name .isTasks
141
- * @param {array} tasks
142
- * @return {boolean}
143
- */
144
-
145
- isTasks(arr) {
146
- return Array.isArray(arr) && arr.every(name => this.tasks.has(name));
147
- }
148
-
149
- /**
150
- * Create an array of tasks to run by resolving registered tasks from the values
151
- * in the given array.
152
- * @name .expandTasks
153
- * @param {...[string|function|glob]} tasks
154
- * @return {array}
155
- */
156
-
157
- expandTasks(...args) {
158
- let vals = flatten(args).filter(Boolean);
159
- let keys = [...this.tasks.keys()];
160
- let tasks = [];
161
-
162
- for (let task of vals) {
163
- if (typeof task === 'function') {
164
- let name = `task-${this.taskId++}`;
165
- this.task(name, task);
166
- tasks.push(name);
167
- continue;
168
- }
169
-
170
- if (typeof task === 'string') {
171
- if (/\*/.test(task)) {
172
- let matches = match(keys, task);
173
- if (matches.length === 0) {
174
- throw new Error(`glob "${task}" does not match any registered tasks`);
175
- }
176
- tasks.push.apply(tasks, matches);
177
- continue;
178
- }
179
-
180
- tasks.push(task);
181
- continue;
182
- }
183
-
184
- let msg = 'expected task dependency to be a string or function, but got: ';
185
- throw new TypeError(msg + typeof task);
186
- }
187
- return tasks;
188
- }
189
-
190
- /**
191
- * Run one or more tasks.
192
- *
193
- * ```js
194
- * const build = app.series(['foo', 'bar', 'baz']);
195
- * // promise
196
- * build().then(console.log).catch(console.error);
197
- * // or callback
198
- * build(function() {
199
- * if (err) return console.error(err);
200
- * });
201
- * ```
202
- * @name .build
203
- * @param {object|array|string|function} `tasks` One or more tasks to run, options, or callback function. If no tasks are defined, the default task is automatically run.
204
- * @param {function} `callback` (optional)
205
- * @return {undefined}
206
- * @api public
207
- */
208
-
209
- async build(...args) {
210
- let state = { status: 'starting', time: new Timer(), app: this };
211
- state.time.start();
212
- this.emit('build', state);
213
-
214
- args = flatten(args);
215
- let cb = typeof args[args.length - 1] === 'function' ? args.pop() : null;
216
-
217
- let { options, tasks } = createOptions(this, true, ...args);
218
- if (!tasks.length) tasks = ['default'];
219
-
220
- let each = options.parallel ? this.parallel : this.series;
221
- let build = each.call(this, options, ...tasks);
222
- let promise = build()
223
- .then(() => {
224
- state.time.end();
225
- state.status = 'finished';
226
- this.emit('build', state);
227
- });
228
-
229
- return resolveBuild(promise, cb);
230
- }
231
-
232
- /**
233
- * Compose a function to run the given tasks in series.
234
- *
235
- * ```js
236
- * const build = app.series(['foo', 'bar', 'baz']);
237
- * // promise
238
- * build().then(console.log).catch(console.error);
239
- * // or callback
240
- * build(function() {
241
- * if (err) return console.error(err);
242
- * });
243
- * ```
244
- * @name .series
245
- * @param {object|array|string|function} `tasks` Tasks to run, options, or callback function. If no tasks are defined, the `default` task is automatically run, if one exists.
246
- * @param {function} `callback` (optional)
247
- * @return {promise|undefined} Returns a promise if no callback is passed.
248
- * @api public
249
- */
250
-
251
- series(...args) {
252
- let stack = new Set();
253
- let compose = this.iterator('series', async(tasks, options, resolve) => {
254
- for (let ele of tasks) {
255
- let task = this.getTask(ele);
256
- task.series = true;
257
-
258
- if (task.skip(options) || stack.has(task)) {
259
- continue;
260
- }
261
-
262
- task.once('finished', () => stack.delete(task));
263
- task.once('starting', () => stack.add(task));
264
- let run = task.run(options);
265
-
266
- if (task.deps.length) {
267
- let opts = Object.assign({}, options, task.options);
268
- let each = opts.parallel ? this.parallel : this.series;
269
- let build = each.call(this, ...task.deps);
270
- await build();
271
- }
272
-
273
- await run();
274
- }
275
-
276
- resolve();
277
- });
278
-
279
- return compose(...args);
280
- }
281
-
282
- /**
283
- * Compose a function to run the given tasks in parallel.
284
- *
285
- * ```js
286
- * // call the returned function to start the build
287
- * const build = app.parallel(['foo', 'bar', 'baz']);
288
- * // promise
289
- * build().then(console.log).catch(console.error);
290
- * // callback
291
- * build(function() {
292
- * if (err) return console.error(err);
293
- * });
294
- * // example task usage
295
- * app.task('default', build);
296
- * ```
297
- * @name .parallel
298
- * @param {object|array|string|function} `tasks` Tasks to run, options, or callback function. If no tasks are defined, the `default` task is automatically run, if one exists.
299
- * @param {function} `callback` (optional)
300
- * @return {promise|undefined} Returns a promise if no callback is passed.
301
- * @api public
302
- */
303
-
304
- parallel(...args) {
305
- let stack = new Set();
306
- let compose = this.iterator('parallel', (tasks, options, resolve) => {
307
- let pending = [];
308
-
309
- for (let ele of tasks) {
310
- let task = this.getTask(ele);
311
- task.parallel = true;
312
-
313
- if (task.skip(options) || stack.has(task)) {
314
- continue;
315
- }
316
-
317
- task.once('finished', () => stack.delete(task));
318
- task.once('starting', () => stack.add(task));
319
- let run = task.run(options);
320
-
321
- if (task.deps.length) {
322
- let opts = Object.assign({}, options, task.options);
323
- let each = opts.parallel ? this.parallel : this.series;
324
- let build = each.call(this, ...task.deps);
325
- pending.push(build().then(() => run()));
326
- } else {
327
- pending.push(run());
328
- }
329
- }
330
-
331
- resolve(Promise.all(pending));
332
- });
333
-
334
- return compose(...args);
335
- }
336
-
337
- /**
338
- * Create an async iterator function that ensures that either a promise is
339
- * returned or the user-provided callback is called.
340
- * @param {function} `fn` Function to invoke inside the promise.
341
- * @return {function}
342
- */
343
-
344
- iterator(type, fn) {
345
- return (...args) => {
346
- let { options, tasks } = createOptions(this, true, ...args);
347
-
348
- return cb => {
349
- let promise = new Promise(async(resolve, reject) => {
350
- if (tasks.length === 0) {
351
- resolve();
352
- return;
353
- }
354
-
355
- try {
356
- let p = fn(tasks, options, resolve);
357
- if (type === 'series') await p;
358
- } catch (err) {
359
- reject(err);
360
- }
361
- });
362
-
363
- return resolveBuild(promise, cb);
364
- };
365
- };
366
- }
367
-
368
- /**
369
- * Format task and generator errors.
370
- * @name .formatError
371
- * @param {String} `name`
372
- * @return {Error}
373
- */
374
-
375
- formatError(name) {
376
- return new Error(`task "${name}" is not registered`);
377
- }
378
-
379
- /**
380
- * Static method for creating a custom Tasks class with the given `Emitter.
381
- * @name .create
382
- * @param {Function} `Emitter`
383
- * @return {Class} Returns the custom class.
384
- * @api public
385
- * @static
386
- */
387
-
388
- static create(Emitter) {
389
- return factory(Emitter);
390
- }
391
- }
392
- return Tasks;
393
- };
394
-
395
- function resolveBuild(promise, cb) {
396
- if (typeof cb === 'function') {
397
- promise.then(val => cb(null, val)).catch(cb);
398
- } else {
399
- return promise;
400
- }
401
- }
402
-
403
- function match(keys, pattern) {
404
- let chars = [...pattern].map(ch => ({ '*': '.*?', '.': '\\.' }[ch] || ch));
405
- let regex = new RegExp(chars.join(''));
406
- return keys.filter(key => regex.test(key));
407
- }
408
-
409
- module.exports = factory();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/lib/timer.js DELETED
@@ -1,37 +0,0 @@
1
- 'use strict';
2
-
3
- const { nano } = require('./utils');
4
-
5
- class Timer {
6
- constructor() {
7
- this.date = {};
8
- this.hr = {};
9
- }
10
-
11
- start() {
12
- this.date.start = new Date();
13
- this.hr.start = process.hrtime();
14
- return this;
15
- }
16
-
17
- end() {
18
- this.date.end = new Date();
19
- this.hr.end = process.hrtime();
20
- this.hr.duration = process.hrtime(this.hr.start);
21
- return this;
22
- }
23
-
24
- get diff() {
25
- return nano(this.hr.end) - nano(this.hr.start);
26
- }
27
-
28
- get duration() {
29
- return this.hr.duration ? require('pretty-time')(this.hr.duration) : '';
30
- }
31
- }
32
-
33
- /**
34
- * Expose `Timer`
35
- */
36
-
37
- module.exports = Timer;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/lib/utils.js DELETED
@@ -1,68 +0,0 @@
1
- 'use strict';
2
-
3
- /**
4
- * Get hr time in nanoseconds
5
- */
6
-
7
- const nano = time => +time[0] * 1e9 + +time[1];
8
-
9
- /**
10
- * Flatten an array
11
- */
12
-
13
- const flatten = arr => [].concat.apply([], arr);
14
-
15
- /**
16
- * Return true if `val` is an object
17
- */
18
-
19
- const isObject = val => val !== null && typeof val === 'object' && !Array.isArray(val);
20
-
21
- /**
22
- * Create an options object from the given arguments.
23
- * @param {object} `app`
24
- * @param {...[function|string|object]} `rest`
25
- * @return {object}
26
- */
27
-
28
- const createOptions = (app, expand, ...rest) => {
29
- const args = flatten(rest);
30
- const config = args.find(val => isObject(val) && !val.isTask) || {};
31
- const options = Object.assign({}, app.options, config);
32
- const tasks = expand === true
33
- ? app.expandTasks(args.filter(val => val && val !== config))
34
- : args.filter(val => val && val !== config);
35
- return { tasks, options };
36
- };
37
-
38
- /**
39
- * Noop for tasks
40
- */
41
-
42
- const noop = cb => cb();
43
-
44
- /**
45
- * Create a non-enumerable property on `obj`
46
- */
47
-
48
- const define = (obj, key, value) => {
49
- Reflect.defineProperty(obj, key, {
50
- configurable: true,
51
- enumerable: false,
52
- writable: true,
53
- value
54
- });
55
- };
56
-
57
- /**
58
- * Expose "utils"
59
- */
60
-
61
- module.exports = {
62
- createOptions,
63
- define,
64
- flatten,
65
- isObject,
66
- nano,
67
- noop
68
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/composer/package.json DELETED
@@ -1,118 +0,0 @@
1
- {
2
- "_from": "composer",
3
- "_id": "composer@4.1.0",
4
- "_inBundle": false,
5
- "_integrity": "sha512-qIIoNYjwFHrQFUdB8kD3pZs30+JeYK9149EpOYr/NVrii00KMO31IonzZMeRSU4qazyWZpEgVzkBmQ6VFWxedA==",
6
- "_location": "/composer",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "tag",
10
- "registry": true,
11
- "raw": "composer",
12
- "name": "composer",
13
- "escapedName": "composer",
14
- "rawSpec": "",
15
- "saveSpec": null,
16
- "fetchSpec": "latest"
17
- },
18
- "_requiredBy": [
19
- "#USER",
20
- "/"
21
- ],
22
- "_resolved": "https://registry.npmjs.org/composer/-/composer-4.1.0.tgz",
23
- "_shasum": "d8b610a862b0a950aa29e760cec8520d903a051c",
24
- "_spec": "composer",
25
- "_where": "/Users/rlankhorst/Sites/localhost/reallysimplessl/wp-content/plugins/really-simple-ssl/lets-encrypt",
26
- "author": {
27
- "name": "Brian Woodward",
28
- "url": "https://github.com/doowb"
29
- },
30
- "bugs": {
31
- "url": "https://github.com/doowb/composer/issues"
32
- },
33
- "bundleDependencies": false,
34
- "contributors": [
35
- {
36
- "name": "Brian Woodward",
37
- "url": "https://twitter.com/doowb"
38
- },
39
- {
40
- "name": "Jon Schlinkert",
41
- "url": "http://twitter.com/jonschlinkert"
42
- }
43
- ],
44
- "dependencies": {
45
- "pretty-time": "^1.1.0",
46
- "use": "^3.1.1"
47
- },
48
- "deprecated": false,
49
- "description": "Run and compose async tasks. Easily define groups of tasks to run in series or parallel.",
50
- "devDependencies": {
51
- "gulp-format-md": "^1.0.0",
52
- "minimist": "^1.2.0",
53
- "mocha": "^5.2.0",
54
- "through2": "^2.0.3"
55
- },
56
- "engines": {
57
- "node": ">=8"
58
- },
59
- "files": [
60
- "index.js",
61
- "lib"
62
- ],
63
- "homepage": "https://github.com/doowb/composer",
64
- "keywords": [
65
- "async",
66
- "await",
67
- "build",
68
- "build-system",
69
- "compose",
70
- "composer",
71
- "composition",
72
- "control",
73
- "flow",
74
- "run",
75
- "system",
76
- "task",
77
- "workflow"
78
- ],
79
- "license": "MIT",
80
- "main": "index.js",
81
- "name": "composer",
82
- "repository": {
83
- "type": "git",
84
- "url": "git+https://github.com/doowb/composer.git"
85
- },
86
- "scripts": {
87
- "test": "mocha"
88
- },
89
- "verb": {
90
- "toc": true,
91
- "layout": "default",
92
- "data": {
93
- "author": {
94
- "linkedin": "woodwardbrian",
95
- "twitter": "doowb"
96
- }
97
- },
98
- "tasks": [
99
- "readme"
100
- ],
101
- "plugins": [
102
- "gulp-format-md"
103
- ],
104
- "related": {
105
- "list": [
106
- "enquirer",
107
- "assemble",
108
- "generate",
109
- "update",
110
- "verb"
111
- ]
112
- },
113
- "lint": {
114
- "reflinks": true
115
- }
116
- },
117
- "version": "4.1.0"
118
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/pretty-time/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2015-present, Jon Schlinkert.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/pretty-time/README.md DELETED
@@ -1,169 +0,0 @@
1
- # pretty-time [![NPM version](https://img.shields.io/npm/v/pretty-time.svg?style=flat)](https://www.npmjs.com/package/pretty-time) [![NPM monthly downloads](https://img.shields.io/npm/dm/pretty-time.svg?style=flat)](https://npmjs.org/package/pretty-time) [![NPM total downloads](https://img.shields.io/npm/dt/pretty-time.svg?style=flat)](https://npmjs.org/package/pretty-time) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/pretty-time.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/pretty-time)
2
-
3
- > Easily format the time from node.js `process.hrtime`. Works with timescales ranging from weeks to nanoseconds.
4
-
5
- Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
6
-
7
- ## Install
8
-
9
- Install with [npm](https://www.npmjs.com/):
10
-
11
- ```sh
12
- $ npm install --save pretty-time
13
- ```
14
-
15
- ## Usage
16
-
17
- ```js
18
- var pretty = require('pretty-time');
19
-
20
- var start = process.hrtime();
21
- var time = process.hrtime(start);
22
- console.log(pretty(time));
23
- //=> 3μs
24
- ```
25
-
26
- ## API
27
-
28
- By default, when no time increment is given as the second argument, the closest timescale is used (e.g. _most granular without being less than zero_).
29
-
30
- **Examples:**
31
-
32
- ```js
33
- pretty([1200708, 795428088]);
34
- //=> '2w'
35
-
36
- pretty([800708, 795428088]);
37
- //=> '1w'
38
-
39
- pretty([400708, 795428088]);
40
- //=> '5d'
41
-
42
- pretty([70708, 795428088]);
43
- //=> '20h'
44
-
45
- pretty([12708, 795428088]);
46
- //=> '4h'
47
-
48
- pretty([3708, 795428088]);
49
- //=> '1h'
50
-
51
- pretty([208, 795428088]);
52
- //=> '3m'
53
-
54
- pretty([20, 795428088]);
55
- //=> '21s'
56
-
57
- pretty([0, 795428088]);
58
- //=> '795ms'
59
-
60
- pretty([0, 000428088]);
61
- //=> '428μs'
62
-
63
- pretty([0, 000000088]);
64
- //=> '88ns'
65
-
66
- pretty([0, 000000018]);
67
- //=> '18ns'
68
- ```
69
-
70
- ### Minimum time increment
71
-
72
- _(All of the following examples use `[6740, 795428088]` as the hrtime array.)_
73
-
74
- This value is passed as the second argument and determines how granular to make the time.
75
-
76
- **Examples**
77
-
78
- ```js
79
- pretty(time, 'h');
80
- //=> '2h'
81
-
82
- pretty(time, 'm');
83
- //=> '1h 52m'
84
-
85
- pretty(time, 's');
86
- //=> '1h 52m 21s'
87
- ```
88
-
89
- **Valid time increments**
90
-
91
- Any of the following may be used:
92
-
93
- * `ns` | `nano` | `nanosecond` | `nanoseconds`
94
- * `μs` | `micro` | `microsecond` | `microseconds`
95
- * `ms` | `milli` | `millisecond` | `milliseconds`
96
- * `s` | `sec` | `second` | `seconds`
97
- * `m` | `min` | `minute` | `minutes`
98
- * `h` | `hr` | `hour` | `hours`
99
- * `d` | `day` | `days`
100
- * `w` | `wk` | `week` | `weeks`
101
-
102
- ## About
103
-
104
- <details>
105
- <summary><strong>Contributing</strong></summary>
106
-
107
- Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
108
-
109
- </details>
110
-
111
- <details>
112
- <summary><strong>Running Tests</strong></summary>
113
-
114
- Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
115
-
116
- ```sh
117
- $ npm install && npm test
118
- ```
119
-
120
- </details>
121
-
122
- <details>
123
- <summary><strong>Building docs</strong></summary>
124
-
125
- _(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
126
-
127
- To generate the readme, run the following command:
128
-
129
- ```sh
130
- $ npm install -g verbose/verb#dev verb-generate-readme && verb
131
- ```
132
-
133
- </details>
134
-
135
- ### Related projects
136
-
137
- You might also be interested in these projects:
138
-
139
- * [o-clock](https://www.npmjs.com/package/o-clock): Simple javascript utility for displaying the time in 12-hour clock format. | [homepage](https://github.com/jonschlinkert/o-clock "Simple javascript utility for displaying the time in 12-hour clock format.")
140
- * [seconds](https://www.npmjs.com/package/seconds): Get the number of seconds for a minute, hour, day and week. | [homepage](https://github.com/jonschlinkert/seconds "Get the number of seconds for a minute, hour, day and week.")
141
- * [time-stamp](https://www.npmjs.com/package/time-stamp): Get a formatted timestamp. | [homepage](https://github.com/jonschlinkert/time-stamp "Get a formatted timestamp.")
142
- * [timescale](https://www.npmjs.com/package/timescale): Convert from one time scale to another. Nanosecond is the most atomic unit, week is… [more](https://github.com/jonschlinkert/timescale) | [homepage](https://github.com/jonschlinkert/timescale "Convert from one time scale to another. Nanosecond is the most atomic unit, week is the largest unit.")
143
- * [week](https://www.npmjs.com/package/week): Get the current week number. | [homepage](https://github.com/datetime/week "Get the current week number.")
144
- * [weekday](https://www.npmjs.com/package/weekday): Get the name and number of the current weekday. Or get the name of the… [more](https://github.com/datetime/weekday) | [homepage](https://github.com/datetime/weekday "Get the name and number of the current weekday. Or get the name of the weekday for a given number.")
145
- * [year](https://www.npmjs.com/package/year): Simple utility to get the current year with 2 or 4 digits. | [homepage](https://github.com/jonschlinkert/year "Simple utility to get the current year with 2 or 4 digits.")
146
-
147
- ### Contributors
148
-
149
- | **Commits** | **Contributor** |
150
- | --- | --- |
151
- | 14 | [jonschlinkert](https://github.com/jonschlinkert) |
152
- | 5 | [doowb](https://github.com/doowb) |
153
-
154
- ### Author
155
-
156
- **Jon Schlinkert**
157
-
158
- * [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
159
- * [GitHub Profile](https://github.com/jonschlinkert)
160
- * [Twitter Profile](https://twitter.com/jonschlinkert)
161
-
162
- ### License
163
-
164
- Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert).
165
- Released under the [MIT License](LICENSE).
166
-
167
- ***
168
-
169
- _This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 12, 2018._
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/pretty-time/index.js DELETED
@@ -1,56 +0,0 @@
1
- /*!
2
- * pretty-time <https://github.com/jonschlinkert/pretty-time>
3
- *
4
- * Copyright (c) 2015-2018, present, Jon Schlinkert.
5
- * Released under the MIT License.
6
- */
7
-
8
- 'use strict';
9
-
10
- const utils = require('./utils');
11
-
12
- module.exports = (time, smallest, digits) => {
13
- const isNumber = /^[0-9]+$/.test(time);
14
- if (!isNumber && !Array.isArray(time)) {
15
- throw new TypeError('expected an array or number in nanoseconds');
16
- }
17
- if (Array.isArray(time) && time.length !== 2) {
18
- throw new TypeError('expected an array from process.hrtime()');
19
- }
20
-
21
- if (/^[0-9]+$/.test(smallest)) {
22
- digits = smallest;
23
- smallest = null;
24
- }
25
-
26
- let num = isNumber ? time : utils.nano(time);
27
- let res = '';
28
- let prev;
29
-
30
- for (const uom of Object.keys(utils.scale)) {
31
- const step = utils.scale[uom];
32
- let inc = num / step;
33
-
34
- if (smallest && utils.isSmallest(uom, smallest)) {
35
- inc = utils.round(inc, digits);
36
- if (prev && (inc === (prev / step))) --inc;
37
- res += inc + uom;
38
- return res.trim();
39
- }
40
-
41
- if (inc < 1) continue;
42
- if (!smallest) {
43
- inc = utils.round(inc, digits);
44
- res += inc + uom;
45
- return res;
46
- }
47
-
48
- prev = step;
49
-
50
- inc = Math.floor(inc);
51
- num -= (inc * step);
52
- res += inc + uom + ' ';
53
- }
54
-
55
- return res.trim();
56
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/pretty-time/package.json DELETED
@@ -1,99 +0,0 @@
1
- {
2
- "_from": "pretty-time@^1.1.0",
3
- "_id": "pretty-time@1.1.0",
4
- "_inBundle": false,
5
- "_integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA==",
6
- "_location": "/pretty-time",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "range",
10
- "registry": true,
11
- "raw": "pretty-time@^1.1.0",
12
- "name": "pretty-time",
13
- "escapedName": "pretty-time",
14
- "rawSpec": "^1.1.0",
15
- "saveSpec": null,
16
- "fetchSpec": "^1.1.0"
17
- },
18
- "_requiredBy": [
19
- "/composer"
20
- ],
21
- "_resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz",
22
- "_shasum": "ffb7429afabb8535c346a34e41873adf3d74dd0e",
23
- "_spec": "pretty-time@^1.1.0",
24
- "_where": "/Users/rlankhorst/Sites/localhost/reallysimplessl/wp-content/plugins/really-simple-ssl/lets-encrypt/node_modules/composer",
25
- "author": {
26
- "name": "Jon Schlinkert",
27
- "url": "https://github.com/jonschlinkert"
28
- },
29
- "bugs": {
30
- "url": "https://github.com/jonschlinkert/pretty-time/issues"
31
- },
32
- "bundleDependencies": false,
33
- "deprecated": false,
34
- "description": "Easily format the time from node.js `process.hrtime`. Works with timescales ranging from weeks to nanoseconds.",
35
- "devDependencies": {
36
- "gulp-format-md": "^1.0.0",
37
- "mocha": "^3.5.3"
38
- },
39
- "engines": {
40
- "node": ">=4"
41
- },
42
- "files": [
43
- "index.js",
44
- "utils.js"
45
- ],
46
- "homepage": "https://github.com/jonschlinkert/pretty-time",
47
- "keywords": [
48
- "convert",
49
- "date",
50
- "format",
51
- "formatting",
52
- "hour",
53
- "hrtime",
54
- "micro",
55
- "milli",
56
- "minute",
57
- "nano",
58
- "nanosecond",
59
- "pretty",
60
- "second",
61
- "time",
62
- "week"
63
- ],
64
- "license": "MIT",
65
- "main": "index.js",
66
- "name": "pretty-time",
67
- "repository": {
68
- "type": "git",
69
- "url": "git+https://github.com/jonschlinkert/pretty-time.git"
70
- },
71
- "scripts": {
72
- "test": "mocha"
73
- },
74
- "verb": {
75
- "toc": false,
76
- "layout": "default",
77
- "tasks": [
78
- "readme"
79
- ],
80
- "plugins": [
81
- "gulp-format-md"
82
- ],
83
- "related": {
84
- "list": [
85
- "o-clock",
86
- "seconds",
87
- "time-stamp",
88
- "timescale",
89
- "week",
90
- "weekday",
91
- "year"
92
- ]
93
- },
94
- "lint": {
95
- "reflinks": true
96
- }
97
- },
98
- "version": "1.1.0"
99
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/pretty-time/utils.js DELETED
@@ -1,32 +0,0 @@
1
- exports.nano = time => +time[0] * 1e9 + +time[1];
2
-
3
- exports.scale = {
4
- 'w': 6048e11,
5
- 'd': 864e11,
6
- 'h': 36e11,
7
- 'm': 6e10,
8
- 's': 1e9,
9
- 'ms': 1e6,
10
- 'μs': 1e3,
11
- 'ns': 1,
12
- };
13
-
14
- exports.regex = {
15
- 'w': /^(w((ee)?k)?s?)$/,
16
- 'd': /^(d(ay)?s?)$/,
17
- 'h': /^(h((ou)?r)?s?)$/,
18
- 'm': /^(min(ute)?s?|m)$/,
19
- 's': /^((sec(ond)?)s?|s)$/,
20
- 'ms': /^(milli(second)?s?|ms)$/,
21
- 'μs': /^(micro(second)?s?|μs)$/,
22
- 'ns': /^(nano(second)?s?|ns?)$/,
23
- };
24
-
25
- exports.isSmallest = function(uom, unit) {
26
- return exports.regex[uom].test(unit);
27
- };
28
-
29
- exports.round = function(num, digits) {
30
- const n = Math.abs(num);
31
- return /[0-9]/.test(digits) ? n.toFixed(digits) : Math.round(n);
32
- };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/use/LICENSE DELETED
@@ -1,21 +0,0 @@
1
- The MIT License (MIT)
2
-
3
- Copyright (c) 2015-present, Jon Schlinkert.
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy
6
- of this software and associated documentation files (the "Software"), to deal
7
- in the Software without restriction, including without limitation the rights
8
- to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
- copies of the Software, and to permit persons to whom the Software is
10
- furnished to do so, subject to the following conditions:
11
-
12
- The above copyright notice and this permission notice shall be included in
13
- all copies or substantial portions of the Software.
14
-
15
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
- IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
- FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
- AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
- LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
- OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21
- THE SOFTWARE.
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/use/README.md DELETED
@@ -1,90 +0,0 @@
1
- # use [![NPM version](https://img.shields.io/npm/v/use.svg?style=flat)](https://www.npmjs.com/package/use) [![NPM monthly downloads](https://img.shields.io/npm/dm/use.svg?style=flat)](https://npmjs.org/package/use) [![NPM total downloads](https://img.shields.io/npm/dt/use.svg?style=flat)](https://npmjs.org/package/use) [![Linux Build Status](https://img.shields.io/travis/jonschlinkert/use.svg?style=flat&label=Travis)](https://travis-ci.org/jonschlinkert/use)
2
-
3
- > Easily add plugin support to your node.js application.
4
-
5
- Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support.
6
-
7
- ## Install
8
-
9
- Install with [npm](https://www.npmjs.com/):
10
-
11
- ```sh
12
- $ npm install --save use
13
- ```
14
-
15
- A different take on plugin handling! This is not a middleware system, if you need something that handles async middleware, [ware](https://github.com/segmentio/ware) is great for that.
16
-
17
- ## Usage
18
-
19
- ```js
20
- const use = require('use');
21
- ```
22
-
23
- See the [examples folder](./examples) for usage examples.
24
-
25
- ## About
26
-
27
- <details>
28
- <summary><strong>Contributing</strong></summary>
29
-
30
- Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new).
31
-
32
- </details>
33
-
34
- <details>
35
- <summary><strong>Running Tests</strong></summary>
36
-
37
- Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command:
38
-
39
- ```sh
40
- $ npm install && npm test
41
- ```
42
-
43
- </details>
44
-
45
- <details>
46
- <summary><strong>Building docs</strong></summary>
47
-
48
- _(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_
49
-
50
- To generate the readme, run the following command:
51
-
52
- ```sh
53
- $ npm install -g verbose/verb#dev verb-generate-readme && verb
54
- ```
55
-
56
- </details>
57
-
58
- ### Related projects
59
-
60
- You might also be interested in these projects:
61
-
62
- * [base-plugins](https://www.npmjs.com/package/base-plugins): Adds 'smart plugin' support to your base application. | [homepage](https://github.com/node-base/base-plugins "Adds 'smart plugin' support to your base application.")
63
- * [base](https://www.npmjs.com/package/base): Framework for rapidly creating high quality, server-side node.js applications, using plugins like building blocks | [homepage](https://github.com/node-base/base "Framework for rapidly creating high quality, server-side node.js applications, using plugins like building blocks")
64
- * [ware](https://www.npmjs.com/package/ware): Easily create your own middleware layer. | [homepage](https://github.com/segmentio/ware "Easily create your own middleware layer.")
65
-
66
- ### Contributors
67
-
68
- | **Commits** | **Contributor** |
69
- | --- | --- |
70
- | 37 | [jonschlinkert](https://github.com/jonschlinkert) |
71
- | 7 | [charlike-old](https://github.com/charlike-old) |
72
- | 2 | [doowb](https://github.com/doowb) |
73
- | 2 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) |
74
-
75
- ### Author
76
-
77
- **Jon Schlinkert**
78
-
79
- * [LinkedIn Profile](https://linkedin.com/in/jonschlinkert)
80
- * [GitHub Profile](https://github.com/jonschlinkert)
81
- * [Twitter Profile](https://twitter.com/jonschlinkert)
82
-
83
- ### License
84
-
85
- Copyright © 2018, [Jon Schlinkert](https://github.com/jonschlinkert).
86
- Released under the [MIT License](LICENSE).
87
-
88
- ***
89
-
90
- _This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.6.0, on July 12, 2018._
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/use/index.js DELETED
@@ -1,155 +0,0 @@
1
- /*!
2
- * use <https://github.com/jonschlinkert/use>
3
- *
4
- * Copyright (c) 2015-2017, Jon Schlinkert.
5
- * Released under the MIT License.
6
- */
7
-
8
- 'use strict';
9
-
10
- module.exports = function base(app, options) {
11
- if (!isObject(app) && typeof app !== 'function') {
12
- throw new TypeError('expected an object or function');
13
- }
14
-
15
- var opts = isObject(options) ? options : {};
16
- var prop = typeof opts.prop === 'string' ? opts.prop : 'fns';
17
- if (!Array.isArray(app[prop])) {
18
- define(app, prop, []);
19
- }
20
-
21
- /**
22
- * Define a plugin function to be passed to use. The only
23
- * parameter exposed to the plugin is `app`, the object or function.
24
- * passed to `use(app)`. `app` is also exposed as `this` in plugins.
25
- *
26
- * Additionally, **if a plugin returns a function, the function will
27
- * be pushed onto the `fns` array**, allowing the plugin to be
28
- * called at a later point by the `run` method.
29
- *
30
- * ```js
31
- * var use = require('use');
32
- *
33
- * // define a plugin
34
- * function foo(app) {
35
- * // do stuff
36
- * }
37
- *
38
- * var app = function(){};
39
- * use(app);
40
- *
41
- * // register plugins
42
- * app.use(foo);
43
- * app.use(bar);
44
- * app.use(baz);
45
- * ```
46
- * @name .use
47
- * @param {Function} `fn` plugin function to call
48
- * @api public
49
- */
50
-
51
- define(app, 'use', use);
52
-
53
- /**
54
- * Run all plugins on `fns`. Any plugin that returns a function
55
- * when called by `use` is pushed onto the `fns` array.
56
- *
57
- * ```js
58
- * var config = {};
59
- * app.run(config);
60
- * ```
61
- * @name .run
62
- * @param {Object} `value` Object to be modified by plugins.
63
- * @return {Object} Returns the object passed to `run`
64
- * @api public
65
- */
66
-
67
- define(app, 'run', function(val) {
68
- if (!isObject(val)) return;
69
-
70
- if (!val.use || !val.run) {
71
- define(val, prop, val[prop] || []);
72
- define(val, 'use', use);
73
- }
74
-
75
- if (!val[prop] || val[prop].indexOf(base) === -1) {
76
- val.use(base);
77
- }
78
-
79
- var self = this || app;
80
- var fns = self[prop];
81
- var len = fns.length;
82
- var idx = -1;
83
-
84
- while (++idx < len) {
85
- val.use(fns[idx]);
86
- }
87
- return val;
88
- });
89
-
90
- /**
91
- * Call plugin `fn`. If a function is returned push it into the
92
- * `fns` array to be called by the `run` method.
93
- */
94
-
95
- function use(type, fn, options) {
96
- var offset = 1;
97
-
98
- if (typeof type === 'string' || Array.isArray(type)) {
99
- fn = wrap(type, fn);
100
- offset++;
101
- } else {
102
- options = fn;
103
- fn = type;
104
- }
105
-
106
- if (typeof fn !== 'function') {
107
- throw new TypeError('expected a function');
108
- }
109
-
110
- var self = this || app;
111
- var fns = self[prop];
112
-
113
- var args = [].slice.call(arguments, offset);
114
- args.unshift(self);
115
-
116
- if (typeof opts.hook === 'function') {
117
- opts.hook.apply(self, args);
118
- }
119
-
120
- var val = fn.apply(self, args);
121
- if (typeof val === 'function' && fns.indexOf(val) === -1) {
122
- fns.push(val);
123
- }
124
- return self;
125
- }
126
-
127
- /**
128
- * Wrap a named plugin function so that it's only called on objects of the
129
- * given `type`
130
- *
131
- * @param {String} `type`
132
- * @param {Function} `fn` Plugin function
133
- * @return {Function}
134
- */
135
-
136
- function wrap(type, fn) {
137
- return function plugin() {
138
- return this.type === type ? fn.apply(this, arguments) : plugin;
139
- };
140
- }
141
-
142
- return app;
143
- };
144
-
145
- function isObject(val) {
146
- return val && typeof val === 'object' && !Array.isArray(val);
147
- }
148
-
149
- function define(obj, key, val) {
150
- Object.defineProperty(obj, key, {
151
- configurable: true,
152
- writable: true,
153
- value: val
154
- });
155
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/node_modules/use/package.json DELETED
@@ -1,108 +0,0 @@
1
- {
2
- "_from": "use@^3.1.1",
3
- "_id": "use@3.1.1",
4
- "_inBundle": false,
5
- "_integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==",
6
- "_location": "/use",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "range",
10
- "registry": true,
11
- "raw": "use@^3.1.1",
12
- "name": "use",
13
- "escapedName": "use",
14
- "rawSpec": "^3.1.1",
15
- "saveSpec": null,
16
- "fetchSpec": "^3.1.1"
17
- },
18
- "_requiredBy": [
19
- "/composer"
20
- ],
21
- "_resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
22
- "_shasum": "d50c8cac79a19fbc20f2911f56eb973f4e10070f",
23
- "_spec": "use@^3.1.1",
24
- "_where": "/Users/rlankhorst/Sites/localhost/reallysimplessl/wp-content/plugins/really-simple-ssl/lets-encrypt/node_modules/composer",
25
- "author": {
26
- "name": "Jon Schlinkert",
27
- "url": "https://github.com/jonschlinkert"
28
- },
29
- "bugs": {
30
- "url": "https://github.com/jonschlinkert/use/issues"
31
- },
32
- "bundleDependencies": false,
33
- "contributors": [
34
- {
35
- "name": "Brian Woodward",
36
- "url": "https://twitter.com/doowb"
37
- },
38
- {
39
- "name": "Jon Schlinkert",
40
- "url": "http://twitter.com/jonschlinkert"
41
- },
42
- {
43
- "name": "Olsten Larck",
44
- "url": "https://i.am.charlike.online"
45
- },
46
- {
47
- "url": "https://github.com/wtgtybhertgeghgtwtg"
48
- }
49
- ],
50
- "deprecated": false,
51
- "description": "Easily add plugin support to your node.js application.",
52
- "devDependencies": {
53
- "base-plugins": "^1.0.0",
54
- "define-property": "^2.0.0",
55
- "extend-shallow": "^3.0.1",
56
- "gulp": "^3.9.1",
57
- "gulp-eslint": "^4.0.0",
58
- "gulp-format-md": "^1.0.0",
59
- "gulp-istanbul": "^1.1.2",
60
- "gulp-mocha": "^3.0.1",
61
- "mocha": "^4.0.1"
62
- },
63
- "engines": {
64
- "node": ">=0.10.0"
65
- },
66
- "files": [
67
- "index.js"
68
- ],
69
- "homepage": "https://github.com/jonschlinkert/use",
70
- "keywords": [
71
- "use"
72
- ],
73
- "license": "MIT",
74
- "main": "index.js",
75
- "name": "use",
76
- "repository": {
77
- "type": "git",
78
- "url": "git+https://github.com/jonschlinkert/use.git"
79
- },
80
- "scripts": {
81
- "test": "mocha"
82
- },
83
- "verb": {
84
- "toc": false,
85
- "layout": "default",
86
- "tasks": [
87
- "readme"
88
- ],
89
- "plugins": [
90
- "gulp-format-md"
91
- ],
92
- "related": {
93
- "list": [
94
- "base",
95
- "base-plugins",
96
- "ware"
97
- ]
98
- },
99
- "reflinks": [
100
- "verb",
101
- "ware"
102
- ],
103
- "lint": {
104
- "reflinks": true
105
- }
106
- },
107
- "version": "3.1.1"
108
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/package-lock.json DELETED
@@ -1,25 +0,0 @@
1
- {
2
- "requires": true,
3
- "lockfileVersion": 1,
4
- "dependencies": {
5
- "composer": {
6
- "version": "4.1.0",
7
- "resolved": "https://registry.npmjs.org/composer/-/composer-4.1.0.tgz",
8
- "integrity": "sha512-qIIoNYjwFHrQFUdB8kD3pZs30+JeYK9149EpOYr/NVrii00KMO31IonzZMeRSU4qazyWZpEgVzkBmQ6VFWxedA==",
9
- "requires": {
10
- "pretty-time": "^1.1.0",
11
- "use": "^3.1.1"
12
- }
13
- },
14
- "pretty-time": {
15
- "version": "1.1.0",
16
- "resolved": "https://registry.npmjs.org/pretty-time/-/pretty-time-1.1.0.tgz",
17
- "integrity": "sha512-28iF6xPQrP8Oa6uxE6a1biz+lWeTOAPKggvjB8HAs6nVMKZwf5bG++632Dx614hIWgUPkgivRfG+a8uAXGTIbA=="
18
- },
19
- "use": {
20
- "version": "3.1.1",
21
- "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz",
22
- "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ=="
23
- }
24
- }
25
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/vendor/plesk/api-php-lib/composer.lock DELETED
@@ -1,2919 +0,0 @@
1
- {
2
- "_readme": [
3
- "This file locks the dependencies of your project to a known state",
4
- "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
5
- "This file is @generated automatically"
6
- ],
7
- "content-hash": "554cb70d6a29bd690fd9e966b98003d0",
8
- "packages": [],
9
- "packages-dev": [
10
- {
11
- "name": "clue/stdio-react",
12
- "version": "v2.3.0",
13
- "source": {
14
- "type": "git",
15
- "url": "https://github.com/clue/reactphp-stdio.git",
16
- "reference": "5f42a3a5a29f52432f0f68b57890353e8ca65069"
17
- },
18
- "dist": {
19
- "type": "zip",
20
- "url": "https://api.github.com/repos/clue/reactphp-stdio/zipball/5f42a3a5a29f52432f0f68b57890353e8ca65069",
21
- "reference": "5f42a3a5a29f52432f0f68b57890353e8ca65069",
22
- "shasum": ""
23
- },
24
- "require": {
25
- "clue/term-react": "^1.0 || ^0.1.1",
26
- "clue/utf8-react": "^1.0 || ^0.1",
27
- "php": ">=5.3",
28
- "react/event-loop": "^1.0 || ^0.5 || ^0.4 || ^0.3",
29
- "react/stream": "^1.0 || ^0.7 || ^0.6"
30
- },
31
- "require-dev": {
32
- "clue/arguments": "^2.0",
33
- "clue/commander": "^1.2",
34
- "phpunit/phpunit": "^7.0 || ^6.4 || ^5.7 || ^4.8.35"
35
- },
36
- "suggest": {
37
- "ext-mbstring": "Using ext-mbstring should provide slightly better performance for handling I/O"
38
- },
39
- "type": "library",
40
- "autoload": {
41
- "psr-4": {
42
- "Clue\\React\\Stdio\\": "src/"
43
- }
44
- },
45
- "notification-url": "https://packagist.org/downloads/",
46
- "license": [
47
- "MIT"
48
- ],
49
- "authors": [
50
- {
51
- "name": "Christian Lück",
52
- "email": "christian@lueck.tv"
53
- }
54
- ],
55
- "description": "Async, event-driven console input & output (STDIN, STDOUT) for truly interactive CLI applications, built on top of ReactPHP",
56
- "homepage": "https://github.com/clue/reactphp-stdio",
57
- "keywords": [
58
- "async",
59
- "autocomplete",
60
- "autocompletion",
61
- "cli",
62
- "history",
63
- "interactive",
64
- "reactphp",
65
- "readline",
66
- "stdin",
67
- "stdio",
68
- "stdout"
69
- ],
70
- "time": "2019-08-28T12:01:30+00:00"
71
- },
72
- {
73
- "name": "clue/term-react",
74
- "version": "v1.2.0",
75
- "source": {
76
- "type": "git",
77
- "url": "https://github.com/clue/reactphp-term.git",
78
- "reference": "3cec1164073455a85a3f2b3c3fe6db2170d21c2a"
79
- },
80
- "dist": {
81
- "type": "zip",
82
- "url": "https://api.github.com/repos/clue/reactphp-term/zipball/3cec1164073455a85a3f2b3c3fe6db2170d21c2a",
83
- "reference": "3cec1164073455a85a3f2b3c3fe6db2170d21c2a",
84
- "shasum": ""
85
- },
86
- "require": {
87
- "php": ">=5.3",
88
- "react/stream": "^1.0 || ^0.7"
89
- },
90
- "require-dev": {
91
- "phpunit/phpunit": "^5.0 || ^4.8",
92
- "react/event-loop": "^1.0 || ^0.5 || ^0.4 || ^0.3"
93
- },
94
- "type": "library",
95
- "autoload": {
96
- "psr-4": {
97
- "Clue\\React\\Term\\": "src/"
98
- }
99
- },
100
- "notification-url": "https://packagist.org/downloads/",
101
- "license": [
102
- "MIT"
103
- ],
104
- "authors": [
105
- {
106
- "name": "Christian Lück",
107
- "email": "christian@lueck.tv"
108
- }
109
- ],
110
- "description": "Streaming terminal emulator, built on top of ReactPHP",
111
- "homepage": "https://github.com/clue/reactphp-term",
112
- "keywords": [
113
- "C0",
114
- "CSI",
115
- "ansi",
116
- "apc",
117
- "ascii",
118
- "c1",
119
- "control codes",
120
- "dps",
121
- "osc",
122
- "pm",
123
- "reactphp",
124
- "streaming",
125
- "terminal",
126
- "vt100",
127
- "xterm"
128
- ],
129
- "time": "2018-07-09T08:20:33+00:00"
130
- },
131
- {
132
- "name": "clue/utf8-react",
133
- "version": "v1.1.0",
134
- "source": {
135
- "type": "git",
136
- "url": "https://github.com/clue/php-utf8-react.git",
137
- "reference": "c6111a22e1056627c119233ff5effe00f5d3cc1d"
138
- },
139
- "dist": {
140
- "type": "zip",
141
- "url": "https://api.github.com/repos/clue/php-utf8-react/zipball/c6111a22e1056627c119233ff5effe00f5d3cc1d",
142
- "reference": "c6111a22e1056627c119233ff5effe00f5d3cc1d",
143
- "shasum": ""
144
- },
145
- "require": {
146
- "php": ">=5.3",
147
- "react/stream": "^1.0 || ^0.7 || ^0.6 || ^0.5 || ^0.4 || ^0.3"
148
- },
149
- "require-dev": {
150
- "phpunit/phpunit": "^5.0 || ^4.8",
151
- "react/stream": "^1.0 || ^0.7"
152
- },
153
- "type": "library",
154
- "autoload": {
155
- "psr-4": {
156
- "Clue\\React\\Utf8\\": "src/"
157
- }
158
- },
159
- "notification-url": "https://packagist.org/downloads/",
160
- "license": [
161
- "MIT"
162
- ],
163
- "authors": [
164
- {
165
- "name": "Christian Lück",
166
- "email": "christian@lueck.tv"
167
- }
168
- ],
169
- "description": "Streaming UTF-8 parser, built on top of ReactPHP",
170
- "homepage": "https://github.com/clue/php-utf8-react",
171
- "keywords": [
172
- "reactphp",
173
- "streaming",
174
- "unicode",
175
- "utf-8",
176
- "utf8"
177
- ],
178
- "time": "2017-07-06T07:43:22+00:00"
179
- },
180
- {
181
- "name": "doctrine/instantiator",
182
- "version": "1.3.1",
183
- "source": {
184
- "type": "git",
185
- "url": "https://github.com/doctrine/instantiator.git",
186
- "reference": "f350df0268e904597e3bd9c4685c53e0e333feea"
187
- },
188
- "dist": {
189
- "type": "zip",
190
- "url": "https://api.github.com/repos/doctrine/instantiator/zipball/f350df0268e904597e3bd9c4685c53e0e333feea",
191
- "reference": "f350df0268e904597e3bd9c4685c53e0e333feea",
192
- "shasum": ""
193
- },
194
- "require": {
195
- "php": "^7.1 || ^8.0"
196
- },
197
- "require-dev": {
198
- "doctrine/coding-standard": "^6.0",
199
- "ext-pdo": "*",
200
- "ext-phar": "*",
201
- "phpbench/phpbench": "^0.13",
202
- "phpstan/phpstan-phpunit": "^0.11",
203
- "phpstan/phpstan-shim": "^0.11",
204
- "phpunit/phpunit": "^7.0"
205
- },
206
- "type": "library",
207
- "extra": {
208
- "branch-alias": {
209
- "dev-master": "1.2.x-dev"
210
- }
211
- },
212
- "autoload": {
213
- "psr-4": {
214
- "Doctrine\\Instantiator\\": "src/Doctrine/Instantiator/"
215
- }
216
- },
217
- "notification-url": "https://packagist.org/downloads/",
218
- "license": [
219
- "MIT"
220
- ],
221
- "authors": [
222
- {
223
- "name": "Marco Pivetta",
224
- "email": "ocramius@gmail.com",
225
- "homepage": "http://ocramius.github.com/"
226
- }
227
- ],
228
- "description": "A small, lightweight utility to instantiate objects in PHP without invoking their constructors",
229
- "homepage": "https://www.doctrine-project.org/projects/instantiator.html",
230
- "keywords": [
231
- "constructor",
232
- "instantiate"
233
- ],
234
- "time": "2020-05-29T17:27:14+00:00"
235
- },
236
- {
237
- "name": "evenement/evenement",
238
- "version": "v3.0.1",
239
- "source": {
240
- "type": "git",
241
- "url": "https://github.com/igorw/evenement.git",
242
- "reference": "531bfb9d15f8aa57454f5f0285b18bec903b8fb7"
243
- },
244
- "dist": {
245
- "type": "zip",
246
- "url": "https://api.github.com/repos/igorw/evenement/zipball/531bfb9d15f8aa57454f5f0285b18bec903b8fb7",
247
- "reference": "531bfb9d15f8aa57454f5f0285b18bec903b8fb7",
248
- "shasum": ""
249
- },
250
- "require": {
251
- "php": ">=7.0"
252
- },
253
- "require-dev": {
254
- "phpunit/phpunit": "^6.0"
255
- },
256
- "type": "library",
257
- "autoload": {
258
- "psr-0": {
259
- "Evenement": "src"
260
- }
261
- },
262
- "notification-url": "https://packagist.org/downloads/",
263
- "license": [
264
- "MIT"
265
- ],
266
- "authors": [
267
- {
268
- "name": "Igor Wiedler",
269
- "email": "igor@wiedler.ch"
270
- }
271
- ],
272
- "description": "Événement is a very simple event dispatching library for PHP",
273
- "keywords": [
274
- "event-dispatcher",
275
- "event-emitter"
276
- ],
277
- "time": "2017-07-23T21:35:13+00:00"
278
- },
279
- {
280
- "name": "jolicode/jolinotif",
281
- "version": "v2.2.0",
282
- "source": {
283
- "type": "git",
284
- "url": "https://github.com/jolicode/JoliNotif.git",
285
- "reference": "52f5b98f964f6009b8ec4c0e951edcd0862e2ac7"
286
- },
287
- "dist": {
288
- "type": "zip",
289
- "url": "https://api.github.com/repos/jolicode/JoliNotif/zipball/52f5b98f964f6009b8ec4c0e951edcd0862e2ac7",
290
- "reference": "52f5b98f964f6009b8ec4c0e951edcd0862e2ac7",
291
- "shasum": ""
292
- },
293
- "require": {
294
- "php": ">=7.0",
295
- "symfony/process": "^3.3|^4.0|^5.0"
296
- },
297
- "require-dev": {
298
- "friendsofphp/php-cs-fixer": "^2.0",
299
- "symfony/finder": "^3.3|^4.0|^5.0",
300
- "symfony/phpunit-bridge": "^3.4.26|^4.0|^5.0"
301
- },
302
- "bin": [
303
- "jolinotif"
304
- ],
305
- "type": "library",
306
- "extra": {
307
- "branch-alias": {
308
- "dev-master": "2.1.x-dev"
309
- }
310
- },
311
- "autoload": {
312
- "psr-4": {
313
- "Joli\\JoliNotif\\": "src/"
314
- }
315
- },
316
- "notification-url": "https://packagist.org/downloads/",
317
- "license": [
318
- "MIT"
319
- ],
320
- "authors": [
321
- {
322
- "name": "Loïck Piera",
323
- "email": "pyrech@gmail.com"
324
- }
325
- ],
326
- "description": "Send desktop notifications on Windows, Linux, MacOS.",
327
- "keywords": [
328
- "MAC",
329
- "growl",
330
- "linux",
331
- "notification",
332
- "windows"
333
- ],
334
- "time": "2020-06-17T08:25:38+00:00"
335
- },
336
- {
337
- "name": "myclabs/deep-copy",
338
- "version": "1.10.1",
339
- "source": {
340
- "type": "git",
341
- "url": "https://github.com/myclabs/DeepCopy.git",
342
- "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5"
343
- },
344
- "dist": {
345
- "type": "zip",
346
- "url": "https://api.github.com/repos/myclabs/DeepCopy/zipball/969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
347
- "reference": "969b211f9a51aa1f6c01d1d2aef56d3bd91598e5",
348
- "shasum": ""
349
- },
350
- "require": {
351
- "php": "^7.1 || ^8.0"
352
- },
353
- "replace": {
354
- "myclabs/deep-copy": "self.version"
355
- },
356
- "require-dev": {
357
- "doctrine/collections": "^1.0",
358
- "doctrine/common": "^2.6",
359
- "phpunit/phpunit": "^7.1"
360
- },
361
- "type": "library",
362
- "autoload": {
363
- "psr-4": {
364
- "DeepCopy\\": "src/DeepCopy/"
365
- },
366
- "files": [
367
- "src/DeepCopy/deep_copy.php"
368
- ]
369
- },
370
- "notification-url": "https://packagist.org/downloads/",
371
- "license": [
372
- "MIT"
373
- ],
374
- "description": "Create deep copies (clones) of your objects",
375
- "keywords": [
376
- "clone",
377
- "copy",
378
- "duplicate",
379
- "object",
380
- "object graph"
381
- ],
382
- "time": "2020-06-29T13:22:24+00:00"
383
- },
384
- {
385
- "name": "phar-io/manifest",
386
- "version": "1.0.3",
387
- "source": {
388
- "type": "git",
389
- "url": "https://github.com/phar-io/manifest.git",
390
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4"
391
- },
392
- "dist": {
393
- "type": "zip",
394
- "url": "https://api.github.com/repos/phar-io/manifest/zipball/7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
395
- "reference": "7761fcacf03b4d4f16e7ccb606d4879ca431fcf4",
396
- "shasum": ""
397
- },
398
- "require": {
399
- "ext-dom": "*",
400
- "ext-phar": "*",
401
- "phar-io/version": "^2.0",
402
- "php": "^5.6 || ^7.0"
403
- },
404
- "type": "library",
405
- "extra": {
406
- "branch-alias": {
407
- "dev-master": "1.0.x-dev"
408
- }
409
- },
410
- "autoload": {
411
- "classmap": [
412
- "src/"
413
- ]
414
- },
415
- "notification-url": "https://packagist.org/downloads/",
416
- "license": [
417
- "BSD-3-Clause"
418
- ],
419
- "authors": [
420
- {
421
- "name": "Arne Blankerts",
422
- "email": "arne@blankerts.de",
423
- "role": "Developer"
424
- },
425
- {
426
- "name": "Sebastian Heuer",
427
- "email": "sebastian@phpeople.de",
428
- "role": "Developer"
429
- },
430
- {
431
- "name": "Sebastian Bergmann",
432
- "email": "sebastian@phpunit.de",
433
- "role": "Developer"
434
- }
435
- ],
436
- "description": "Component for reading phar.io manifest information from a PHP Archive (PHAR)",
437
- "time": "2018-07-08T19:23:20+00:00"
438
- },
439
- {
440
- "name": "phar-io/version",
441
- "version": "2.0.1",
442
- "source": {
443
- "type": "git",
444
- "url": "https://github.com/phar-io/version.git",
445
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6"
446
- },
447
- "dist": {
448
- "type": "zip",
449
- "url": "https://api.github.com/repos/phar-io/version/zipball/45a2ec53a73c70ce41d55cedef9063630abaf1b6",
450
- "reference": "45a2ec53a73c70ce41d55cedef9063630abaf1b6",
451
- "shasum": ""
452
- },
453
- "require": {
454
- "php": "^5.6 || ^7.0"
455
- },
456
- "type": "library",
457
- "autoload": {
458
- "classmap": [
459
- "src/"
460
- ]
461
- },
462
- "notification-url": "https://packagist.org/downloads/",
463
- "license": [
464
- "BSD-3-Clause"
465
- ],
466
- "authors": [
467
- {
468
- "name": "Arne Blankerts",
469
- "email": "arne@blankerts.de",
470
- "role": "Developer"
471
- },
472
- {
473
- "name": "Sebastian Heuer",
474
- "email": "sebastian@phpeople.de",
475
- "role": "Developer"
476
- },
477
- {
478
- "name": "Sebastian Bergmann",
479
- "email": "sebastian@phpunit.de",
480
- "role": "Developer"
481
- }
482
- ],
483
- "description": "Library for handling version information and constraints",
484
- "time": "2018-07-08T19:19:57+00:00"
485
- },
486
- {
487
- "name": "phpdocumentor/reflection-common",
488
- "version": "2.2.0",
489
- "source": {
490
- "type": "git",
491
- "url": "https://github.com/phpDocumentor/ReflectionCommon.git",
492
- "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b"
493
- },
494
- "dist": {
495
- "type": "zip",
496
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionCommon/zipball/1d01c49d4ed62f25aa84a747ad35d5a16924662b",
497
- "reference": "1d01c49d4ed62f25aa84a747ad35d5a16924662b",
498
- "shasum": ""
499
- },
500
- "require": {
501
- "php": "^7.2 || ^8.0"
502
- },
503
- "type": "library",
504
- "extra": {
505
- "branch-alias": {
506
- "dev-2.x": "2.x-dev"
507
- }
508
- },
509
- "autoload": {
510
- "psr-4": {
511
- "phpDocumentor\\Reflection\\": "src/"
512
- }
513
- },
514
- "notification-url": "https://packagist.org/downloads/",
515
- "license": [
516
- "MIT"
517
- ],
518
- "authors": [
519
- {
520
- "name": "Jaap van Otterdijk",
521
- "email": "opensource@ijaap.nl"
522
- }
523
- ],
524
- "description": "Common reflection classes used by phpdocumentor to reflect the code structure",
525
- "homepage": "http://www.phpdoc.org",
526
- "keywords": [
527
- "FQSEN",
528
- "phpDocumentor",
529
- "phpdoc",
530
- "reflection",
531
- "static analysis"
532
- ],
533
- "time": "2020-06-27T09:03:43+00:00"
534
- },
535
- {
536
- "name": "phpdocumentor/reflection-docblock",
537
- "version": "5.2.0",
538
- "source": {
539
- "type": "git",
540
- "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
541
- "reference": "3170448f5769fe19f456173d833734e0ff1b84df"
542
- },
543
- "dist": {
544
- "type": "zip",
545
- "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/3170448f5769fe19f456173d833734e0ff1b84df",
546
- "reference": "3170448f5769fe19f456173d833734e0ff1b84df",
547
- "shasum": ""
548
- },
549
- "require": {
550
- "ext-filter": "*",
551
- "php": "^7.2 || ^8.0",
552
- "phpdocumentor/reflection-common": "^2.2",
553
- "phpdocumentor/type-resolver": "^1.3",
554
- "webmozart/assert": "^1.9.1"
555
- },
556
- "require-dev": {
557
- "mockery/mockery": "~1.3.2"
558
- },
559
- "type": "library",
560
- "extra": {
561
- "branch-alias": {
562
- "dev-master": "5.x-dev"
563
- }
564
- },
565
- "autoload": {
566
- "psr-4": {
567
- "phpDocumentor\\Reflection\\": "src"
568
- }
569
- },
570
- "notification-url": "https://packagist.org/downloads/",
571
- "license": [
572
- "MIT"
573
- ],
574
- "authors": [
575
- {
576
- "name": "Mike van Riel",
577
- "email": "me@mikevanriel.com"
578
- },
579
- {
580
- "name": "Jaap van Otterdijk",
581
- "email": "account@ijaap.nl"
582
- }
583
- ],
584
- "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
585
- "time": "2020-07-20T20:05:34+00:00"
586
- },
587
- {
588
- "name": "phpdocumentor/type-resolver",
589
- "version": "1.3.0",
590
- "source": {
591
- "type": "git",
592
- "url": "https://github.com/phpDocumentor/TypeResolver.git",
593
- "reference": "e878a14a65245fbe78f8080eba03b47c3b705651"
594
- },
595
- "dist": {
596
- "type": "zip",
597
- "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e878a14a65245fbe78f8080eba03b47c3b705651",
598
- "reference": "e878a14a65245fbe78f8080eba03b47c3b705651",
599
- "shasum": ""
600
- },
601
- "require": {
602
- "php": "^7.2 || ^8.0",
603
- "phpdocumentor/reflection-common": "^2.0"
604
- },
605
- "require-dev": {
606
- "ext-tokenizer": "*"
607
- },
608
- "type": "library",
609
- "extra": {
610
- "branch-alias": {
611
- "dev-1.x": "1.x-dev"
612
- }
613
- },
614
- "autoload": {
615
- "psr-4": {
616
- "phpDocumentor\\Reflection\\": "src"
617
- }
618
- },
619
- "notification-url": "https://packagist.org/downloads/",
620
- "license": [
621
- "MIT"
622
- ],
623
- "authors": [
624
- {
625
- "name": "Mike van Riel",
626
- "email": "me@mikevanriel.com"
627
- }
628
- ],
629
- "description": "A PSR-5 based resolver of Class names, Types and Structural Element Names",
630
- "time": "2020-06-27T10:12:23+00:00"
631
- },
632
- {
633
- "name": "phpspec/prophecy",
634
- "version": "1.11.1",
635
- "source": {
636
- "type": "git",
637
- "url": "https://github.com/phpspec/prophecy.git",
638
- "reference": "b20034be5efcdab4fb60ca3a29cba2949aead160"
639
- },
640
- "dist": {
641
- "type": "zip",
642
- "url": "https://api.github.com/repos/phpspec/prophecy/zipball/b20034be5efcdab4fb60ca3a29cba2949aead160",
643
- "reference": "b20034be5efcdab4fb60ca3a29cba2949aead160",
644
- "shasum": ""
645
- },
646
- "require": {
647
- "doctrine/instantiator": "^1.2",
648
- "php": "^7.2",
649
- "phpdocumentor/reflection-docblock": "^5.0",
650
- "sebastian/comparator": "^3.0 || ^4.0",
651
- "sebastian/recursion-context": "^3.0 || ^4.0"
652
- },
653
- "require-dev": {
654
- "phpspec/phpspec": "^6.0",
655
- "phpunit/phpunit": "^8.0"
656
- },
657
- "type": "library",
658
- "extra": {
659
- "branch-alias": {
660
- "dev-master": "1.11.x-dev"
661
- }
662
- },
663
- "autoload": {
664
- "psr-4": {
665
- "Prophecy\\": "src/Prophecy"
666
- }
667
- },
668
- "notification-url": "https://packagist.org/downloads/",
669
- "license": [
670
- "MIT"
671
- ],
672
- "authors": [
673
- {
674
- "name": "Konstantin Kudryashov",
675
- "email": "ever.zet@gmail.com",
676
- "homepage": "http://everzet.com"
677
- },
678
- {
679
- "name": "Marcello Duarte",
680
- "email": "marcello.duarte@gmail.com"
681
- }
682
- ],
683
- "description": "Highly opinionated mocking framework for PHP 5.3+",
684
- "homepage": "https://github.com/phpspec/prophecy",
685
- "keywords": [
686
- "Double",
687
- "Dummy",
688
- "fake",
689
- "mock",
690
- "spy",
691
- "stub"
692
- ],
693
- "time": "2020-07-08T12:44:21+00:00"
694
- },
695
- {
696
- "name": "phpunit/php-code-coverage",
697
- "version": "8.0.2",
698
- "source": {
699
- "type": "git",
700
- "url": "https://github.com/sebastianbergmann/php-code-coverage.git",
701
- "reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc"
702
- },
703
- "dist": {
704
- "type": "zip",
705
- "url": "https://api.github.com/repos/sebastianbergmann/php-code-coverage/zipball/ca6647ffddd2add025ab3f21644a441d7c146cdc",
706
- "reference": "ca6647ffddd2add025ab3f21644a441d7c146cdc",
707
- "shasum": ""
708
- },
709
- "require": {
710
- "ext-dom": "*",
711
- "ext-xmlwriter": "*",
712
- "php": "^7.3",
713
- "phpunit/php-file-iterator": "^3.0",
714
- "phpunit/php-text-template": "^2.0",
715
- "phpunit/php-token-stream": "^4.0",
716
- "sebastian/code-unit-reverse-lookup": "^2.0",
717
- "sebastian/environment": "^5.0",
718
- "sebastian/version": "^3.0",
719
- "theseer/tokenizer": "^1.1.3"
720
- },
721
- "require-dev": {
722
- "phpunit/phpunit": "^9.0"
723
- },
724
- "suggest": {
725
- "ext-pcov": "*",
726
- "ext-xdebug": "*"
727
- },
728
- "type": "library",
729
- "extra": {
730
- "branch-alias": {
731
- "dev-master": "8.0-dev"
732
- }
733
- },
734
- "autoload": {
735
- "classmap": [
736
- "src/"
737
- ]
738
- },
739
- "notification-url": "https://packagist.org/downloads/",
740
- "license": [
741
- "BSD-3-Clause"
742
- ],
743
- "authors": [
744
- {
745
- "name": "Sebastian Bergmann",
746
- "email": "sebastian@phpunit.de",
747
- "role": "lead"
748
- }
749
- ],
750
- "description": "Library that provides collection, processing, and rendering functionality for PHP code coverage information.",
751
- "homepage": "https://github.com/sebastianbergmann/php-code-coverage",
752
- "keywords": [
753
- "coverage",
754
- "testing",
755
- "xunit"
756
- ],
757
- "time": "2020-05-23T08:02:54+00:00"
758
- },
759
- {
760
- "name": "phpunit/php-file-iterator",
761
- "version": "3.0.4",
762
- "source": {
763
- "type": "git",
764
- "url": "https://github.com/sebastianbergmann/php-file-iterator.git",
765
- "reference": "25fefc5b19835ca653877fe081644a3f8c1d915e"
766
- },
767
- "dist": {
768
- "type": "zip",
769
- "url": "https://api.github.com/repos/sebastianbergmann/php-file-iterator/zipball/25fefc5b19835ca653877fe081644a3f8c1d915e",
770
- "reference": "25fefc5b19835ca653877fe081644a3f8c1d915e",
771
- "shasum": ""
772
- },
773
- "require": {
774
- "php": "^7.3 || ^8.0"
775
- },
776
- "require-dev": {
777
- "phpunit/phpunit": "^9.0"
778
- },
779
- "type": "library",
780
- "extra": {
781
- "branch-alias": {
782
- "dev-master": "3.0-dev"
783
- }
784
- },
785
- "autoload": {
786
- "classmap": [
787
- "src/"
788
- ]
789
- },
790
- "notification-url": "https://packagist.org/downloads/",
791
- "license": [
792
- "BSD-3-Clause"
793
- ],
794
- "authors": [
795
- {
796
- "name": "Sebastian Bergmann",
797
- "email": "sebastian@phpunit.de",
798
- "role": "lead"
799
- }
800
- ],
801
- "description": "FilterIterator implementation that filters files based on a list of suffixes.",
802
- "homepage": "https://github.com/sebastianbergmann/php-file-iterator/",
803
- "keywords": [
804
- "filesystem",
805
- "iterator"
806
- ],
807
- "time": "2020-07-11T05:18:21+00:00"
808
- },
809
- {
810
- "name": "phpunit/php-invoker",
811
- "version": "3.0.2",
812
- "source": {
813
- "type": "git",
814
- "url": "https://github.com/sebastianbergmann/php-invoker.git",
815
- "reference": "f6eedfed1085dd1f4c599629459a0277d25f9a66"
816
- },
817
- "dist": {
818
- "type": "zip",
819
- "url": "https://api.github.com/repos/sebastianbergmann/php-invoker/zipball/f6eedfed1085dd1f4c599629459a0277d25f9a66",
820
- "reference": "f6eedfed1085dd1f4c599629459a0277d25f9a66",
821
- "shasum": ""
822
- },
823
- "require": {
824
- "php": "^7.3 || ^8.0"
825
- },
826
- "require-dev": {
827
- "ext-pcntl": "*",
828
- "phpunit/phpunit": "^9.0"
829
- },
830
- "suggest": {
831
- "ext-pcntl": "*"
832
- },
833
- "type": "library",
834
- "extra": {
835
- "branch-alias": {
836
- "dev-master": "3.0-dev"
837
- }
838
- },
839
- "autoload": {
840
- "classmap": [
841
- "src/"
842
- ]
843
- },
844
- "notification-url": "https://packagist.org/downloads/",
845
- "license": [
846
- "BSD-3-Clause"
847
- ],
848
- "authors": [
849
- {
850
- "name": "Sebastian Bergmann",
851
- "email": "sebastian@phpunit.de",
852
- "role": "lead"
853
- }
854
- ],
855
- "description": "Invoke callables with a timeout",
856
- "homepage": "https://github.com/sebastianbergmann/php-invoker/",
857
- "keywords": [
858
- "process"
859
- ],
860
- "time": "2020-06-26T11:53:53+00:00"
861
- },
862
- {
863
- "name": "phpunit/php-text-template",
864
- "version": "2.0.2",
865
- "source": {
866
- "type": "git",
867
- "url": "https://github.com/sebastianbergmann/php-text-template.git",
868
- "reference": "6ff9c8ea4d3212b88fcf74e25e516e2c51c99324"
869
- },
870
- "dist": {
871
- "type": "zip",
872
- "url": "https://api.github.com/repos/sebastianbergmann/php-text-template/zipball/6ff9c8ea4d3212b88fcf74e25e516e2c51c99324",
873
- "reference": "6ff9c8ea4d3212b88fcf74e25e516e2c51c99324",
874
- "shasum": ""
875
- },
876
- "require": {
877
- "php": "^7.3 || ^8.0"
878
- },
879
- "require-dev": {
880
- "phpunit/phpunit": "^9.0"
881
- },
882
- "type": "library",
883
- "extra": {
884
- "branch-alias": {
885
- "dev-master": "2.0-dev"
886
- }
887
- },
888
- "autoload": {
889
- "classmap": [
890
- "src/"
891
- ]
892
- },
893
- "notification-url": "https://packagist.org/downloads/",
894
- "license": [
895
- "BSD-3-Clause"
896
- ],
897
- "authors": [
898
- {
899
- "name": "Sebastian Bergmann",
900
- "email": "sebastian@phpunit.de",
901
- "role": "lead"
902
- }
903
- ],
904
- "description": "Simple template engine.",
905
- "homepage": "https://github.com/sebastianbergmann/php-text-template/",
906
- "keywords": [
907
- "template"
908
- ],
909
- "time": "2020-06-26T11:55:37+00:00"
910
- },
911
- {
912
- "name": "phpunit/php-timer",
913
- "version": "5.0.1",
914
- "source": {
915
- "type": "git",
916
- "url": "https://github.com/sebastianbergmann/php-timer.git",
917
- "reference": "cc49734779cbb302bf51a44297dab8c4bbf941e7"
918
- },
919
- "dist": {
920
- "type": "zip",
921
- "url": "https://api.github.com/repos/sebastianbergmann/php-timer/zipball/cc49734779cbb302bf51a44297dab8c4bbf941e7",
922
- "reference": "cc49734779cbb302bf51a44297dab8c4bbf941e7",
923
- "shasum": ""
924
- },
925
- "require": {
926
- "php": "^7.3 || ^8.0"
927
- },
928
- "require-dev": {
929
- "phpunit/phpunit": "^9.2"
930
- },
931
- "type": "library",
932
- "extra": {
933
- "branch-alias": {
934
- "dev-master": "5.0-dev"
935
- }
936
- },
937
- "autoload": {
938
- "classmap": [
939
- "src/"
940
- ]
941
- },
942
- "notification-url": "https://packagist.org/downloads/",
943
- "license": [
944
- "BSD-3-Clause"
945
- ],
946
- "authors": [
947
- {
948
- "name": "Sebastian Bergmann",
949
- "email": "sebastian@phpunit.de",
950
- "role": "lead"
951
- }
952
- ],
953
- "description": "Utility class for timing",
954
- "homepage": "https://github.com/sebastianbergmann/php-timer/",
955
- "keywords": [
956
- "timer"
957
- ],
958
- "time": "2020-06-26T11:58:13+00:00"
959
- },
960
- {
961
- "name": "phpunit/php-token-stream",
962
- "version": "4.0.3",
963
- "source": {
964
- "type": "git",
965
- "url": "https://github.com/sebastianbergmann/php-token-stream.git",
966
- "reference": "5672711b6b07b14d5ab694e700c62eeb82fcf374"
967
- },
968
- "dist": {
969
- "type": "zip",
970
- "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/5672711b6b07b14d5ab694e700c62eeb82fcf374",
971
- "reference": "5672711b6b07b14d5ab694e700c62eeb82fcf374",
972
- "shasum": ""
973
- },
974
- "require": {
975
- "ext-tokenizer": "*",
976
- "php": "^7.3 || ^8.0"
977
- },
978
- "require-dev": {
979
- "phpunit/phpunit": "^9.0"
980
- },
981
- "type": "library",
982
- "extra": {
983
- "branch-alias": {
984
- "dev-master": "4.0-dev"
985
- }
986
- },
987
- "autoload": {
988
- "classmap": [
989
- "src/"
990
- ]
991
- },
992
- "notification-url": "https://packagist.org/downloads/",
993
- "license": [
994
- "BSD-3-Clause"
995
- ],
996
- "authors": [
997
- {
998
- "name": "Sebastian Bergmann",
999
- "email": "sebastian@phpunit.de"
1000
- }
1001
- ],
1002
- "description": "Wrapper around PHP's tokenizer extension.",
1003
- "homepage": "https://github.com/sebastianbergmann/php-token-stream/",
1004
- "keywords": [
1005
- "tokenizer"
1006
- ],
1007
- "time": "2020-06-27T06:36:25+00:00"
1008
- },
1009
- {
1010
- "name": "phpunit/phpunit",
1011
- "version": "9.2.6",
1012
- "source": {
1013
- "type": "git",
1014
- "url": "https://github.com/sebastianbergmann/phpunit.git",
1015
- "reference": "1c6a9e4312e209e659f1fce3ce88dd197c2448f6"
1016
- },
1017
- "dist": {
1018
- "type": "zip",
1019
- "url": "https://api.github.com/repos/sebastianbergmann/phpunit/zipball/1c6a9e4312e209e659f1fce3ce88dd197c2448f6",
1020
- "reference": "1c6a9e4312e209e659f1fce3ce88dd197c2448f6",
1021
- "shasum": ""
1022
- },
1023
- "require": {
1024
- "doctrine/instantiator": "^1.3.1",
1025
- "ext-dom": "*",
1026
- "ext-json": "*",
1027
- "ext-libxml": "*",
1028
- "ext-mbstring": "*",
1029
- "ext-xml": "*",
1030
- "ext-xmlwriter": "*",
1031
- "myclabs/deep-copy": "^1.9.5",
1032
- "phar-io/manifest": "^1.0.3",
1033
- "phar-io/version": "^2.0.1",
1034
- "php": "^7.3",
1035
- "phpspec/prophecy": "^1.10.3",
1036
- "phpunit/php-code-coverage": "^8.0.2",
1037
- "phpunit/php-file-iterator": "^3.0.3",
1038
- "phpunit/php-invoker": "^3.0.2",
1039
- "phpunit/php-text-template": "^2.0.2",
1040
- "phpunit/php-timer": "^5.0.1",
1041
- "sebastian/code-unit": "^1.0.5",
1042
- "sebastian/comparator": "^4.0.3",
1043
- "sebastian/diff": "^4.0.1",
1044
- "sebastian/environment": "^5.1.2",
1045
- "sebastian/exporter": "^4.0.2",
1046
- "sebastian/global-state": "^4.0",
1047
- "sebastian/object-enumerator": "^4.0.2",
1048
- "sebastian/resource-operations": "^3.0.2",
1049
- "sebastian/type": "^2.1.1",
1050
- "sebastian/version": "^3.0.1"
1051
- },
1052
- "require-dev": {
1053
- "ext-pdo": "*",
1054
- "phpspec/prophecy-phpunit": "^2.0"
1055
- },
1056
- "suggest": {
1057
- "ext-soap": "*",
1058
- "ext-xdebug": "*"
1059
- },
1060
- "bin": [
1061
- "phpunit"
1062
- ],
1063
- "type": "library",
1064
- "extra": {
1065
- "branch-alias": {
1066
- "dev-master": "9.2-dev"
1067
- }
1068
- },
1069
- "autoload": {
1070
- "classmap": [
1071
- "src/"
1072
- ],
1073
- "files": [
1074
- "src/Framework/Assert/Functions.php"
1075
- ]
1076
- },
1077
- "notification-url": "https://packagist.org/downloads/",
1078
- "license": [
1079
- "BSD-3-Clause"
1080
- ],
1081
- "authors": [
1082
- {
1083
- "name": "Sebastian Bergmann",
1084
- "email": "sebastian@phpunit.de",
1085
- "role": "lead"
1086
- }
1087
- ],
1088
- "description": "The PHP Unit Testing framework.",
1089
- "homepage": "https://phpunit.de/",
1090
- "keywords": [
1091
- "phpunit",
1092
- "testing",
1093
- "xunit"
1094
- ],
1095
- "time": "2020-07-13T17:55:55+00:00"
1096
- },
1097
- {
1098
- "name": "psr/container",
1099
- "version": "1.0.0",
1100
- "source": {
1101
- "type": "git",
1102
- "url": "https://github.com/php-fig/container.git",
1103
- "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f"
1104
- },
1105
- "dist": {
1106
- "type": "zip",
1107
- "url": "https://api.github.com/repos/php-fig/container/zipball/b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
1108
- "reference": "b7ce3b176482dbbc1245ebf52b181af44c2cf55f",
1109
- "shasum": ""
1110
- },
1111
- "require": {
1112
- "php": ">=5.3.0"
1113
- },
1114
- "type": "library",
1115
- "extra": {
1116
- "branch-alias": {
1117
- "dev-master": "1.0.x-dev"
1118
- }
1119
- },
1120
- "autoload": {
1121
- "psr-4": {
1122
- "Psr\\Container\\": "src/"
1123
- }
1124
- },
1125
- "notification-url": "https://packagist.org/downloads/",
1126
- "license": [
1127
- "MIT"
1128
- ],
1129
- "authors": [
1130
- {
1131
- "name": "PHP-FIG",
1132
- "homepage": "http://www.php-fig.org/"
1133
- }
1134
- ],
1135
- "description": "Common Container Interface (PHP FIG PSR-11)",
1136
- "homepage": "https://github.com/php-fig/container",
1137
- "keywords": [
1138
- "PSR-11",
1139
- "container",
1140
- "container-interface",
1141
- "container-interop",
1142
- "psr"
1143
- ],
1144
- "time": "2017-02-14T16:28:37+00:00"
1145
- },
1146
- {
1147
- "name": "react/event-loop",
1148
- "version": "v1.1.1",
1149
- "source": {
1150
- "type": "git",
1151
- "url": "https://github.com/reactphp/event-loop.git",
1152
- "reference": "6d24de090cd59cfc830263cfba965be77b563c13"
1153
- },
1154
- "dist": {
1155
- "type": "zip",
1156
- "url": "https://api.github.com/repos/reactphp/event-loop/zipball/6d24de090cd59cfc830263cfba965be77b563c13",
1157
- "reference": "6d24de090cd59cfc830263cfba965be77b563c13",
1158
- "shasum": ""
1159
- },
1160
- "require": {
1161
- "php": ">=5.3.0"
1162
- },
1163
- "require-dev": {
1164
- "phpunit/phpunit": "^7.0 || ^6.4 || ^5.7 || ^4.8.35"
1165
- },
1166
- "suggest": {
1167
- "ext-event": "~1.0 for ExtEventLoop",
1168
- "ext-pcntl": "For signal handling support when using the StreamSelectLoop",
1169
- "ext-uv": "* for ExtUvLoop"
1170
- },
1171
- "type": "library",
1172
- "autoload": {
1173
- "psr-4": {
1174
- "React\\EventLoop\\": "src"
1175
- }
1176
- },
1177
- "notification-url": "https://packagist.org/downloads/",
1178
- "license": [
1179
- "MIT"
1180
- ],
1181
- "description": "ReactPHP's core reactor event loop that libraries can use for evented I/O.",
1182
- "keywords": [
1183
- "asynchronous",
1184
- "event-loop"
1185
- ],
1186
- "time": "2020-01-01T18:39:52+00:00"
1187
- },
1188
- {
1189
- "name": "react/stream",
1190
- "version": "v1.1.1",
1191
- "source": {
1192
- "type": "git",
1193
- "url": "https://github.com/reactphp/stream.git",
1194
- "reference": "7c02b510ee3f582c810aeccd3a197b9c2f52ff1a"
1195
- },
1196
- "dist": {
1197
- "type": "zip",
1198
- "url": "https://api.github.com/repos/reactphp/stream/zipball/7c02b510ee3f582c810aeccd3a197b9c2f52ff1a",
1199
- "reference": "7c02b510ee3f582c810aeccd3a197b9c2f52ff1a",
1200
- "shasum": ""
1201
- },
1202
- "require": {
1203
- "evenement/evenement": "^3.0 || ^2.0 || ^1.0",
1204
- "php": ">=5.3.8",
1205
- "react/event-loop": "^1.0 || ^0.5 || ^0.4 || ^0.3.5"
1206
- },
1207
- "require-dev": {
1208
- "clue/stream-filter": "~1.2",
1209
- "phpunit/phpunit": "^7.0 || ^6.4 || ^5.7 || ^4.8.35"
1210
- },
1211
- "type": "library",
1212
- "autoload": {
1213
- "psr-4": {
1214
- "React\\Stream\\": "src"
1215
- }
1216
- },
1217
- "notification-url": "https://packagist.org/downloads/",
1218
- "license": [
1219
- "MIT"
1220
- ],
1221
- "description": "Event-driven readable and writable streams for non-blocking I/O in ReactPHP",
1222
- "keywords": [
1223
- "event-driven",
1224
- "io",
1225
- "non-blocking",
1226
- "pipe",
1227
- "reactphp",
1228
- "readable",
1229
- "stream",
1230
- "writable"
1231
- ],
1232
- "time": "2020-05-04T10:17:57+00:00"
1233
- },
1234
- {
1235
- "name": "sebastian/code-unit",
1236
- "version": "1.0.5",
1237
- "source": {
1238
- "type": "git",
1239
- "url": "https://github.com/sebastianbergmann/code-unit.git",
1240
- "reference": "c1e2df332c905079980b119c4db103117e5e5c90"
1241
- },
1242
- "dist": {
1243
- "type": "zip",
1244
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit/zipball/c1e2df332c905079980b119c4db103117e5e5c90",
1245
- "reference": "c1e2df332c905079980b119c4db103117e5e5c90",
1246
- "shasum": ""
1247
- },
1248
- "require": {
1249
- "php": "^7.3 || ^8.0"
1250
- },
1251
- "require-dev": {
1252
- "phpunit/phpunit": "^9.0"
1253
- },
1254
- "type": "library",
1255
- "extra": {
1256
- "branch-alias": {
1257
- "dev-master": "1.0-dev"
1258
- }
1259
- },
1260
- "autoload": {
1261
- "classmap": [
1262
- "src/"
1263
- ]
1264
- },
1265
- "notification-url": "https://packagist.org/downloads/",
1266
- "license": [
1267
- "BSD-3-Clause"
1268
- ],
1269
- "authors": [
1270
- {
1271
- "name": "Sebastian Bergmann",
1272
- "email": "sebastian@phpunit.de",
1273
- "role": "lead"
1274
- }
1275
- ],
1276
- "description": "Collection of value objects that represent the PHP code units",
1277
- "homepage": "https://github.com/sebastianbergmann/code-unit",
1278
- "time": "2020-06-26T12:50:45+00:00"
1279
- },
1280
- {
1281
- "name": "sebastian/code-unit-reverse-lookup",
1282
- "version": "2.0.2",
1283
- "source": {
1284
- "type": "git",
1285
- "url": "https://github.com/sebastianbergmann/code-unit-reverse-lookup.git",
1286
- "reference": "ee51f9bb0c6d8a43337055db3120829fa14da819"
1287
- },
1288
- "dist": {
1289
- "type": "zip",
1290
- "url": "https://api.github.com/repos/sebastianbergmann/code-unit-reverse-lookup/zipball/ee51f9bb0c6d8a43337055db3120829fa14da819",
1291
- "reference": "ee51f9bb0c6d8a43337055db3120829fa14da819",
1292
- "shasum": ""
1293
- },
1294
- "require": {
1295
- "php": "^7.3 || ^8.0"
1296
- },
1297
- "require-dev": {
1298
- "phpunit/phpunit": "^9.0"
1299
- },
1300
- "type": "library",
1301
- "extra": {
1302
- "branch-alias": {
1303
- "dev-master": "2.0-dev"
1304
- }
1305
- },
1306
- "autoload": {
1307
- "classmap": [
1308
- "src/"
1309
- ]
1310
- },
1311
- "notification-url": "https://packagist.org/downloads/",
1312
- "license": [
1313
- "BSD-3-Clause"
1314
- ],
1315
- "authors": [
1316
- {
1317
- "name": "Sebastian Bergmann",
1318
- "email": "sebastian@phpunit.de"
1319
- }
1320
- ],
1321
- "description": "Looks up which function or method a line of code belongs to",
1322
- "homepage": "https://github.com/sebastianbergmann/code-unit-reverse-lookup/",
1323
- "time": "2020-06-26T12:04:00+00:00"
1324
- },
1325
- {
1326
- "name": "sebastian/comparator",
1327
- "version": "4.0.3",
1328
- "source": {
1329
- "type": "git",
1330
- "url": "https://github.com/sebastianbergmann/comparator.git",
1331
- "reference": "dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f"
1332
- },
1333
- "dist": {
1334
- "type": "zip",
1335
- "url": "https://api.github.com/repos/sebastianbergmann/comparator/zipball/dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f",
1336
- "reference": "dcc580eadfaa4e7f9d2cf9ae1922134ea962e14f",
1337
- "shasum": ""
1338
- },
1339
- "require": {
1340
- "php": "^7.3 || ^8.0",
1341
- "sebastian/diff": "^4.0",
1342
- "sebastian/exporter": "^4.0"
1343
- },
1344
- "require-dev": {
1345
- "phpunit/phpunit": "^9.0"
1346
- },
1347
- "type": "library",
1348
- "extra": {
1349
- "branch-alias": {
1350
- "dev-master": "4.0-dev"
1351
- }
1352
- },
1353
- "autoload": {
1354
- "classmap": [
1355
- "src/"
1356
- ]
1357
- },
1358
- "notification-url": "https://packagist.org/downloads/",
1359
- "license": [
1360
- "BSD-3-Clause"
1361
- ],
1362
- "authors": [
1363
- {
1364
- "name": "Sebastian Bergmann",
1365
- "email": "sebastian@phpunit.de"
1366
- },
1367
- {
1368
- "name": "Jeff Welch",
1369
- "email": "whatthejeff@gmail.com"
1370
- },
1371
- {
1372
- "name": "Volker Dusch",
1373
- "email": "github@wallbash.com"
1374
- },
1375
- {
1376
- "name": "Bernhard Schussek",
1377
- "email": "bschussek@2bepublished.at"
1378
- }
1379
- ],
1380
- "description": "Provides the functionality to compare PHP values for equality",
1381
- "homepage": "https://github.com/sebastianbergmann/comparator",
1382
- "keywords": [
1383
- "comparator",
1384
- "compare",
1385
- "equality"
1386
- ],
1387
- "time": "2020-06-26T12:05:46+00:00"
1388
- },
1389
- {
1390
- "name": "sebastian/diff",
1391
- "version": "4.0.2",
1392
- "source": {
1393
- "type": "git",
1394
- "url": "https://github.com/sebastianbergmann/diff.git",
1395
- "reference": "1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113"
1396
- },
1397
- "dist": {
1398
- "type": "zip",
1399
- "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113",
1400
- "reference": "1e90b4cf905a7d06c420b1d2e9d11a4dc8a13113",
1401
- "shasum": ""
1402
- },
1403
- "require": {
1404
- "php": "^7.3 || ^8.0"
1405
- },
1406
- "require-dev": {
1407
- "phpunit/phpunit": "^9.0",
1408
- "symfony/process": "^4.2 || ^5"
1409
- },
1410
- "type": "library",
1411
- "extra": {
1412
- "branch-alias": {
1413
- "dev-master": "4.0-dev"
1414
- }
1415
- },
1416
- "autoload": {
1417
- "classmap": [
1418
- "src/"
1419
- ]
1420
- },
1421
- "notification-url": "https://packagist.org/downloads/",
1422
- "license": [
1423
- "BSD-3-Clause"
1424
- ],
1425
- "authors": [
1426
- {
1427
- "name": "Sebastian Bergmann",
1428
- "email": "sebastian@phpunit.de"
1429
- },
1430
- {
1431
- "name": "Kore Nordmann",
1432
- "email": "mail@kore-nordmann.de"
1433
- }
1434
- ],
1435
- "description": "Diff implementation",
1436
- "homepage": "https://github.com/sebastianbergmann/diff",
1437
- "keywords": [
1438
- "diff",
1439
- "udiff",
1440
- "unidiff",
1441
- "unified diff"
1442
- ],
1443
- "time": "2020-06-30T04:46:02+00:00"
1444
- },
1445
- {
1446
- "name": "sebastian/environment",
1447
- "version": "5.1.2",
1448
- "source": {
1449
- "type": "git",
1450
- "url": "https://github.com/sebastianbergmann/environment.git",
1451
- "reference": "0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2"
1452
- },
1453
- "dist": {
1454
- "type": "zip",
1455
- "url": "https://api.github.com/repos/sebastianbergmann/environment/zipball/0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2",
1456
- "reference": "0a757cab9d5b7ef49a619f1143e6c9c1bc0fe9d2",
1457
- "shasum": ""
1458
- },
1459
- "require": {
1460
- "php": "^7.3 || ^8.0"
1461
- },
1462
- "require-dev": {
1463
- "phpunit/phpunit": "^9.0"
1464
- },
1465
- "suggest": {
1466
- "ext-posix": "*"
1467
- },
1468
- "type": "library",
1469
- "extra": {
1470
- "branch-alias": {
1471
- "dev-master": "5.0-dev"
1472
- }
1473
- },
1474
- "autoload": {
1475
- "classmap": [
1476
- "src/"
1477
- ]
1478
- },
1479
- "notification-url": "https://packagist.org/downloads/",
1480
- "license": [
1481
- "BSD-3-Clause"
1482
- ],
1483
- "authors": [
1484
- {
1485
- "name": "Sebastian Bergmann",
1486
- "email": "sebastian@phpunit.de"
1487
- }
1488
- ],
1489
- "description": "Provides functionality to handle HHVM/PHP environments",
1490
- "homepage": "http://www.github.com/sebastianbergmann/environment",
1491
- "keywords": [
1492
- "Xdebug",
1493
- "environment",
1494
- "hhvm"
1495
- ],
1496
- "time": "2020-06-26T12:07:24+00:00"
1497
- },
1498
- {
1499
- "name": "sebastian/exporter",
1500
- "version": "4.0.2",
1501
- "source": {
1502
- "type": "git",
1503
- "url": "https://github.com/sebastianbergmann/exporter.git",
1504
- "reference": "571d721db4aec847a0e59690b954af33ebf9f023"
1505
- },
1506
- "dist": {
1507
- "type": "zip",
1508
- "url": "https://api.github.com/repos/sebastianbergmann/exporter/zipball/571d721db4aec847a0e59690b954af33ebf9f023",
1509
- "reference": "571d721db4aec847a0e59690b954af33ebf9f023",
1510
- "shasum": ""
1511
- },
1512
- "require": {
1513
- "php": "^7.3 || ^8.0",
1514
- "sebastian/recursion-context": "^4.0"
1515
- },
1516
- "require-dev": {
1517
- "ext-mbstring": "*",
1518
- "phpunit/phpunit": "^9.2"
1519
- },
1520
- "type": "library",
1521
- "extra": {
1522
- "branch-alias": {
1523
- "dev-master": "4.0-dev"
1524
- }
1525
- },
1526
- "autoload": {
1527
- "classmap": [
1528
- "src/"
1529
- ]
1530
- },
1531
- "notification-url": "https://packagist.org/downloads/",
1532
- "license": [
1533
- "BSD-3-Clause"
1534
- ],
1535
- "authors": [
1536
- {
1537
- "name": "Sebastian Bergmann",
1538
- "email": "sebastian@phpunit.de"
1539
- },
1540
- {
1541
- "name": "Jeff Welch",
1542
- "email": "whatthejeff@gmail.com"
1543
- },
1544
- {
1545
- "name": "Volker Dusch",
1546
- "email": "github@wallbash.com"
1547
- },
1548
- {
1549
- "name": "Adam Harvey",
1550
- "email": "aharvey@php.net"
1551
- },
1552
- {
1553
- "name": "Bernhard Schussek",
1554
- "email": "bschussek@gmail.com"
1555
- }
1556
- ],
1557
- "description": "Provides the functionality to export PHP variables for visualization",
1558
- "homepage": "http://www.github.com/sebastianbergmann/exporter",
1559
- "keywords": [
1560
- "export",
1561
- "exporter"
1562
- ],
1563
- "time": "2020-06-26T12:08:55+00:00"
1564
- },
1565
- {
1566
- "name": "sebastian/global-state",
1567
- "version": "4.0.0",
1568
- "source": {
1569
- "type": "git",
1570
- "url": "https://github.com/sebastianbergmann/global-state.git",
1571
- "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72"
1572
- },
1573
- "dist": {
1574
- "type": "zip",
1575
- "url": "https://api.github.com/repos/sebastianbergmann/global-state/zipball/bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
1576
- "reference": "bdb1e7c79e592b8c82cb1699be3c8743119b8a72",
1577
- "shasum": ""
1578
- },
1579
- "require": {
1580
- "php": "^7.3",
1581
- "sebastian/object-reflector": "^2.0",
1582
- "sebastian/recursion-context": "^4.0"
1583
- },
1584
- "require-dev": {
1585
- "ext-dom": "*",
1586
- "phpunit/phpunit": "^9.0"
1587
- },
1588
- "suggest": {
1589
- "ext-uopz": "*"
1590
- },
1591
- "type": "library",
1592
- "extra": {
1593
- "branch-alias": {
1594
- "dev-master": "4.0-dev"
1595
- }
1596
- },
1597
- "autoload": {
1598
- "classmap": [
1599
- "src/"
1600
- ]
1601
- },
1602
- "notification-url": "https://packagist.org/downloads/",
1603
- "license": [
1604
- "BSD-3-Clause"
1605
- ],
1606
- "authors": [
1607
- {
1608
- "name": "Sebastian Bergmann",
1609
- "email": "sebastian@phpunit.de"
1610
- }
1611
- ],
1612
- "description": "Snapshotting of global state",
1613
- "homepage": "http://www.github.com/sebastianbergmann/global-state",
1614
- "keywords": [
1615
- "global state"
1616
- ],
1617
- "time": "2020-02-07T06:11:37+00:00"
1618
- },
1619
- {
1620
- "name": "sebastian/object-enumerator",
1621
- "version": "4.0.2",
1622
- "source": {
1623
- "type": "git",
1624
- "url": "https://github.com/sebastianbergmann/object-enumerator.git",
1625
- "reference": "074fed2d0a6d08e1677dd8ce9d32aecb384917b8"
1626
- },
1627
- "dist": {
1628
- "type": "zip",
1629
- "url": "https://api.github.com/repos/sebastianbergmann/object-enumerator/zipball/074fed2d0a6d08e1677dd8ce9d32aecb384917b8",
1630
- "reference": "074fed2d0a6d08e1677dd8ce9d32aecb384917b8",
1631
- "shasum": ""
1632
- },
1633
- "require": {
1634
- "php": "^7.3 || ^8.0",
1635
- "sebastian/object-reflector": "^2.0",
1636
- "sebastian/recursion-context": "^4.0"
1637
- },
1638
- "require-dev": {
1639
- "phpunit/phpunit": "^9.0"
1640
- },
1641
- "type": "library",
1642
- "extra": {
1643
- "branch-alias": {
1644
- "dev-master": "4.0-dev"
1645
- }
1646
- },
1647
- "autoload": {
1648
- "classmap": [
1649
- "src/"
1650
- ]
1651
- },
1652
- "notification-url": "https://packagist.org/downloads/",
1653
- "license": [
1654
- "BSD-3-Clause"
1655
- ],
1656
- "authors": [
1657
- {
1658
- "name": "Sebastian Bergmann",
1659
- "email": "sebastian@phpunit.de"
1660
- }
1661
- ],
1662
- "description": "Traverses array structures and object graphs to enumerate all referenced objects",
1663
- "homepage": "https://github.com/sebastianbergmann/object-enumerator/",
1664
- "time": "2020-06-26T12:11:32+00:00"
1665
- },
1666
- {
1667
- "name": "sebastian/object-reflector",
1668
- "version": "2.0.2",
1669
- "source": {
1670
- "type": "git",
1671
- "url": "https://github.com/sebastianbergmann/object-reflector.git",
1672
- "reference": "127a46f6b057441b201253526f81d5406d6c7840"
1673
- },
1674
- "dist": {
1675
- "type": "zip",
1676
- "url": "https://api.github.com/repos/sebastianbergmann/object-reflector/zipball/127a46f6b057441b201253526f81d5406d6c7840",
1677
- "reference": "127a46f6b057441b201253526f81d5406d6c7840",
1678
- "shasum": ""
1679
- },
1680
- "require": {
1681
- "php": "^7.3 || ^8.0"
1682
- },
1683
- "require-dev": {
1684
- "phpunit/phpunit": "^9.0"
1685
- },
1686
- "type": "library",
1687
- "extra": {
1688
- "branch-alias": {
1689
- "dev-master": "2.0-dev"
1690
- }
1691
- },
1692
- "autoload": {
1693
- "classmap": [
1694
- "src/"
1695
- ]
1696
- },
1697
- "notification-url": "https://packagist.org/downloads/",
1698
- "license": [
1699
- "BSD-3-Clause"
1700
- ],
1701
- "authors": [
1702
- {
1703
- "name": "Sebastian Bergmann",
1704
- "email": "sebastian@phpunit.de"
1705
- }
1706
- ],
1707
- "description": "Allows reflection of object attributes, including inherited and non-public ones",
1708
- "homepage": "https://github.com/sebastianbergmann/object-reflector/",
1709
- "time": "2020-06-26T12:12:55+00:00"
1710
- },
1711
- {
1712
- "name": "sebastian/recursion-context",
1713
- "version": "4.0.2",
1714
- "source": {
1715
- "type": "git",
1716
- "url": "https://github.com/sebastianbergmann/recursion-context.git",
1717
- "reference": "062231bf61d2b9448c4fa5a7643b5e1829c11d63"
1718
- },
1719
- "dist": {
1720
- "type": "zip",
1721
- "url": "https://api.github.com/repos/sebastianbergmann/recursion-context/zipball/062231bf61d2b9448c4fa5a7643b5e1829c11d63",
1722
- "reference": "062231bf61d2b9448c4fa5a7643b5e1829c11d63",
1723
- "shasum": ""
1724
- },
1725
- "require": {
1726
- "php": "^7.3 || ^8.0"
1727
- },
1728
- "require-dev": {
1729
- "phpunit/phpunit": "^9.0"
1730
- },
1731
- "type": "library",
1732
- "extra": {
1733
- "branch-alias": {
1734
- "dev-master": "4.0-dev"
1735
- }
1736
- },
1737
- "autoload": {
1738
- "classmap": [
1739
- "src/"
1740
- ]
1741
- },
1742
- "notification-url": "https://packagist.org/downloads/",
1743
- "license": [
1744
- "BSD-3-Clause"
1745
- ],
1746
- "authors": [
1747
- {
1748
- "name": "Sebastian Bergmann",
1749
- "email": "sebastian@phpunit.de"
1750
- },
1751
- {
1752
- "name": "Jeff Welch",
1753
- "email": "whatthejeff@gmail.com"
1754
- },
1755
- {
1756
- "name": "Adam Harvey",
1757
- "email": "aharvey@php.net"
1758
- }
1759
- ],
1760
- "description": "Provides functionality to recursively process PHP variables",
1761
- "homepage": "http://www.github.com/sebastianbergmann/recursion-context",
1762
- "time": "2020-06-26T12:14:17+00:00"
1763
- },
1764
- {
1765
- "name": "sebastian/resource-operations",
1766
- "version": "3.0.2",
1767
- "source": {
1768
- "type": "git",
1769
- "url": "https://github.com/sebastianbergmann/resource-operations.git",
1770
- "reference": "0653718a5a629b065e91f774595267f8dc32e213"
1771
- },
1772
- "dist": {
1773
- "type": "zip",
1774
- "url": "https://api.github.com/repos/sebastianbergmann/resource-operations/zipball/0653718a5a629b065e91f774595267f8dc32e213",
1775
- "reference": "0653718a5a629b065e91f774595267f8dc32e213",
1776
- "shasum": ""
1777
- },
1778
- "require": {
1779
- "php": "^7.3 || ^8.0"
1780
- },
1781
- "require-dev": {
1782
- "phpunit/phpunit": "^9.0"
1783
- },
1784
- "type": "library",
1785
- "extra": {
1786
- "branch-alias": {
1787
- "dev-master": "3.0-dev"
1788
- }
1789
- },
1790
- "autoload": {
1791
- "classmap": [
1792
- "src/"
1793
- ]
1794
- },
1795
- "notification-url": "https://packagist.org/downloads/",
1796
- "license": [
1797
- "BSD-3-Clause"
1798
- ],
1799
- "authors": [
1800
- {
1801
- "name": "Sebastian Bergmann",
1802
- "email": "sebastian@phpunit.de"
1803
- }
1804
- ],
1805
- "description": "Provides a list of PHP built-in functions that operate on resources",
1806
- "homepage": "https://www.github.com/sebastianbergmann/resource-operations",
1807
- "time": "2020-06-26T12:16:22+00:00"
1808
- },
1809
- {
1810
- "name": "sebastian/type",
1811
- "version": "2.2.1",
1812
- "source": {
1813
- "type": "git",
1814
- "url": "https://github.com/sebastianbergmann/type.git",
1815
- "reference": "86991e2b33446cd96e648c18bcdb1e95afb2c05a"
1816
- },
1817
- "dist": {
1818
- "type": "zip",
1819
- "url": "https://api.github.com/repos/sebastianbergmann/type/zipball/86991e2b33446cd96e648c18bcdb1e95afb2c05a",
1820
- "reference": "86991e2b33446cd96e648c18bcdb1e95afb2c05a",
1821
- "shasum": ""
1822
- },
1823
- "require": {
1824
- "php": "^7.3 || ^8.0"
1825
- },
1826
- "require-dev": {
1827
- "phpunit/phpunit": "^9.2"
1828
- },
1829
- "type": "library",
1830
- "extra": {
1831
- "branch-alias": {
1832
- "dev-master": "2.2-dev"
1833
- }
1834
- },
1835
- "autoload": {
1836
- "classmap": [
1837
- "src/"
1838
- ]
1839
- },
1840
- "notification-url": "https://packagist.org/downloads/",
1841
- "license": [
1842
- "BSD-3-Clause"
1843
- ],
1844
- "authors": [
1845
- {
1846
- "name": "Sebastian Bergmann",
1847
- "email": "sebastian@phpunit.de",
1848
- "role": "lead"
1849
- }
1850
- ],
1851
- "description": "Collection of value objects that represent the types of the PHP type system",
1852
- "homepage": "https://github.com/sebastianbergmann/type",
1853
- "time": "2020-07-05T08:31:53+00:00"
1854
- },
1855
- {
1856
- "name": "sebastian/version",
1857
- "version": "3.0.1",
1858
- "source": {
1859
- "type": "git",
1860
- "url": "https://github.com/sebastianbergmann/version.git",
1861
- "reference": "626586115d0ed31cb71483be55beb759b5af5a3c"
1862
- },
1863
- "dist": {
1864
- "type": "zip",
1865
- "url": "https://api.github.com/repos/sebastianbergmann/version/zipball/626586115d0ed31cb71483be55beb759b5af5a3c",
1866
- "reference": "626586115d0ed31cb71483be55beb759b5af5a3c",
1867
- "shasum": ""
1868
- },
1869
- "require": {
1870
- "php": "^7.3 || ^8.0"
1871
- },
1872
- "type": "library",
1873
- "extra": {
1874
- "branch-alias": {
1875
- "dev-master": "3.0-dev"
1876
- }
1877
- },
1878
- "autoload": {
1879
- "classmap": [
1880
- "src/"
1881
- ]
1882
- },
1883
- "notification-url": "https://packagist.org/downloads/",
1884
- "license": [
1885
- "BSD-3-Clause"
1886
- ],
1887
- "authors": [
1888
- {
1889
- "name": "Sebastian Bergmann",
1890
- "email": "sebastian@phpunit.de",
1891
- "role": "lead"
1892
- }
1893
- ],
1894
- "description": "Library that helps with managing the version number of Git-hosted PHP projects",
1895
- "homepage": "https://github.com/sebastianbergmann/version",
1896
- "time": "2020-06-26T12:18:43+00:00"
1897
- },
1898
- {
1899
- "name": "spatie/phpunit-watcher",
1900
- "version": "1.22.0",
1901
- "source": {
1902
- "type": "git",
1903
- "url": "https://github.com/spatie/phpunit-watcher.git",
1904
- "reference": "dee58ae54d3bc4eccc2b3d7006444f535a693f18"
1905
- },
1906
- "dist": {
1907
- "type": "zip",
1908
- "url": "https://api.github.com/repos/spatie/phpunit-watcher/zipball/dee58ae54d3bc4eccc2b3d7006444f535a693f18",
1909
- "reference": "dee58ae54d3bc4eccc2b3d7006444f535a693f18",
1910
- "shasum": ""
1911
- },
1912
- "require": {
1913
- "clue/stdio-react": "^2.0",
1914
- "jolicode/jolinotif": "^2.0",
1915
- "php": "^7.2",
1916
- "symfony/console": "^4.0|^5.0",
1917
- "symfony/process": "^4.0|^5.0",
1918
- "symfony/yaml": "^4.0|^5.0",
1919
- "yosymfony/resource-watcher": "^2.0"
1920
- },
1921
- "conflict": {
1922
- "yosymfony/resource-watcher": "<2.0"
1923
- },
1924
- "require-dev": {
1925
- "phpunit/phpunit": "^8.0"
1926
- },
1927
- "bin": [
1928
- "phpunit-watcher"
1929
- ],
1930
- "type": "library",
1931
- "autoload": {
1932
- "psr-4": {
1933
- "Spatie\\PhpUnitWatcher\\": "src"
1934
- }
1935
- },
1936
- "notification-url": "https://packagist.org/downloads/",
1937
- "license": [
1938
- "MIT"
1939
- ],
1940
- "authors": [
1941
- {
1942
- "name": "Freek Van der Herten",
1943
- "email": "freek@spatie.be",
1944
- "homepage": "https://spatie.be",
1945
- "role": "Developer"
1946
- }
1947
- ],
1948
- "description": "Automatically rerun PHPUnit tests when source code changes",
1949
- "homepage": "https://github.com/spatie/phpunit-watcher",
1950
- "keywords": [
1951
- "phpunit-watcher",
1952
- "spatie"
1953
- ],
1954
- "time": "2020-01-04T22:46:42+00:00"
1955
- },
1956
- {
1957
- "name": "symfony/console",
1958
- "version": "v5.1.3",
1959
- "source": {
1960
- "type": "git",
1961
- "url": "https://github.com/symfony/console.git",
1962
- "reference": "2226c68009627934b8cfc01260b4d287eab070df"
1963
- },
1964
- "dist": {
1965
- "type": "zip",
1966
- "url": "https://api.github.com/repos/symfony/console/zipball/2226c68009627934b8cfc01260b4d287eab070df",
1967
- "reference": "2226c68009627934b8cfc01260b4d287eab070df",
1968
- "shasum": ""
1969
- },
1970
- "require": {
1971
- "php": ">=7.2.5",
1972
- "symfony/polyfill-mbstring": "~1.0",
1973
- "symfony/polyfill-php73": "^1.8",
1974
- "symfony/polyfill-php80": "^1.15",
1975
- "symfony/service-contracts": "^1.1|^2",
1976
- "symfony/string": "^5.1"
1977
- },
1978
- "conflict": {
1979
- "symfony/dependency-injection": "<4.4",
1980
- "symfony/dotenv": "<5.1",
1981
- "symfony/event-dispatcher": "<4.4",
1982
- "symfony/lock": "<4.4",
1983
- "symfony/process": "<4.4"
1984
- },
1985
- "provide": {
1986
- "psr/log-implementation": "1.0"
1987
- },
1988
- "require-dev": {
1989
- "psr/log": "~1.0",
1990
- "symfony/config": "^4.4|^5.0",
1991
- "symfony/dependency-injection": "^4.4|^5.0",
1992
- "symfony/event-dispatcher": "^4.4|^5.0",
1993
- "symfony/lock": "^4.4|^5.0",
1994
- "symfony/process": "^4.4|^5.0",
1995
- "symfony/var-dumper": "^4.4|^5.0"
1996
- },
1997
- "suggest": {
1998
- "psr/log": "For using the console logger",
1999
- "symfony/event-dispatcher": "",
2000
- "symfony/lock": "",
2001
- "symfony/process": ""
2002
- },
2003
- "type": "library",
2004
- "extra": {
2005
- "branch-alias": {
2006
- "dev-master": "5.1-dev"
2007
- }
2008
- },
2009
- "autoload": {
2010
- "psr-4": {
2011
- "Symfony\\Component\\Console\\": ""
2012
- },
2013
- "exclude-from-classmap": [
2014
- "/Tests/"
2015
- ]
2016
- },
2017
- "notification-url": "https://packagist.org/downloads/",
2018
- "license": [
2019
- "MIT"
2020
- ],
2021
- "authors": [
2022
- {
2023
- "name": "Fabien Potencier",
2024
- "email": "fabien@symfony.com"
2025
- },
2026
- {
2027
- "name": "Symfony Community",
2028
- "homepage": "https://symfony.com/contributors"
2029
- }
2030
- ],
2031
- "description": "Symfony Console Component",
2032
- "homepage": "https://symfony.com",
2033
- "time": "2020-07-06T13:23:11+00:00"
2034
- },
2035
- {
2036
- "name": "symfony/deprecation-contracts",
2037
- "version": "v2.1.3",
2038
- "source": {
2039
- "type": "git",
2040
- "url": "https://github.com/symfony/deprecation-contracts.git",
2041
- "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14"
2042
- },
2043
- "dist": {
2044
- "type": "zip",
2045
- "url": "https://api.github.com/repos/symfony/deprecation-contracts/zipball/5e20b83385a77593259c9f8beb2c43cd03b2ac14",
2046
- "reference": "5e20b83385a77593259c9f8beb2c43cd03b2ac14",
2047
- "shasum": ""
2048
- },
2049
- "require": {
2050
- "php": ">=7.1"
2051
- },
2052
- "type": "library",
2053
- "extra": {
2054
- "branch-alias": {
2055
- "dev-master": "2.1-dev"
2056
- },
2057
- "thanks": {
2058
- "name": "symfony/contracts",
2059
- "url": "https://github.com/symfony/contracts"
2060
- }
2061
- },
2062
- "autoload": {
2063
- "files": [
2064
- "function.php"
2065
- ]
2066
- },
2067
- "notification-url": "https://packagist.org/downloads/",
2068
- "license": [
2069
- "MIT"
2070
- ],
2071
- "authors": [
2072
- {
2073
- "name": "Nicolas Grekas",
2074
- "email": "p@tchwork.com"
2075
- },
2076
- {
2077
- "name": "Symfony Community",
2078
- "homepage": "https://symfony.com/contributors"
2079
- }
2080
- ],
2081
- "description": "A generic function and convention to trigger deprecation notices",
2082
- "homepage": "https://symfony.com",
2083
- "time": "2020-06-06T08:49:21+00:00"
2084
- },
2085
- {
2086
- "name": "symfony/finder",
2087
- "version": "v5.1.3",
2088
- "source": {
2089
- "type": "git",
2090
- "url": "https://github.com/symfony/finder.git",
2091
- "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187"
2092
- },
2093
- "dist": {
2094
- "type": "zip",
2095
- "url": "https://api.github.com/repos/symfony/finder/zipball/4298870062bfc667cb78d2b379be4bf5dec5f187",
2096
- "reference": "4298870062bfc667cb78d2b379be4bf5dec5f187",
2097
- "shasum": ""
2098
- },
2099
- "require": {
2100
- "php": ">=7.2.5"
2101
- },
2102
- "type": "library",
2103
- "extra": {
2104
- "branch-alias": {
2105
- "dev-master": "5.1-dev"
2106
- }
2107
- },
2108
- "autoload": {
2109
- "psr-4": {
2110
- "Symfony\\Component\\Finder\\": ""
2111
- },
2112
- "exclude-from-classmap": [
2113
- "/Tests/"
2114
- ]
2115
- },
2116
- "notification-url": "https://packagist.org/downloads/",
2117
- "license": [
2118
- "MIT"
2119
- ],
2120
- "authors": [
2121
- {
2122
- "name": "Fabien Potencier",
2123
- "email": "fabien@symfony.com"
2124
- },
2125
- {
2126
- "name": "Symfony Community",
2127
- "homepage": "https://symfony.com/contributors"
2128
- }
2129
- ],
2130
- "description": "Symfony Finder Component",
2131
- "homepage": "https://symfony.com",
2132
- "time": "2020-05-20T17:43:50+00:00"
2133
- },
2134
- {
2135
- "name": "symfony/polyfill-ctype",
2136
- "version": "v1.18.0",
2137
- "source": {
2138
- "type": "git",
2139
- "url": "https://github.com/symfony/polyfill-ctype.git",
2140
- "reference": "1c302646f6efc070cd46856e600e5e0684d6b454"
2141
- },
2142
- "dist": {
2143
- "type": "zip",
2144
- "url": "https://api.github.com/repos/symfony/polyfill-ctype/zipball/1c302646f6efc070cd46856e600e5e0684d6b454",
2145
- "reference": "1c302646f6efc070cd46856e600e5e0684d6b454",
2146
- "shasum": ""
2147
- },
2148
- "require": {
2149
- "php": ">=5.3.3"
2150
- },
2151
- "suggest": {
2152
- "ext-ctype": "For best performance"
2153
- },
2154
- "type": "library",
2155
- "extra": {
2156
- "branch-alias": {
2157
- "dev-master": "1.18-dev"
2158
- },
2159
- "thanks": {
2160
- "name": "symfony/polyfill",
2161
- "url": "https://github.com/symfony/polyfill"
2162
- }
2163
- },
2164
- "autoload": {
2165
- "psr-4": {
2166
- "Symfony\\Polyfill\\Ctype\\": ""
2167
- },
2168
- "files": [
2169
- "bootstrap.php"
2170
- ]
2171
- },
2172
- "notification-url": "https://packagist.org/downloads/",
2173
- "license": [
2174
- "MIT"
2175
- ],
2176
- "authors": [
2177
- {
2178
- "name": "Gert de Pagter",
2179
- "email": "BackEndTea@gmail.com"
2180
- },
2181
- {
2182
- "name": "Symfony Community",
2183
- "homepage": "https://symfony.com/contributors"
2184
- }
2185
- ],
2186
- "description": "Symfony polyfill for ctype functions",
2187
- "homepage": "https://symfony.com",
2188
- "keywords": [
2189
- "compatibility",
2190
- "ctype",
2191
- "polyfill",
2192
- "portable"
2193
- ],
2194
- "time": "2020-07-14T12:35:20+00:00"
2195
- },
2196
- {
2197
- "name": "symfony/polyfill-intl-grapheme",
2198
- "version": "v1.18.0",
2199
- "source": {
2200
- "type": "git",
2201
- "url": "https://github.com/symfony/polyfill-intl-grapheme.git",
2202
- "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5"
2203
- },
2204
- "dist": {
2205
- "type": "zip",
2206
- "url": "https://api.github.com/repos/symfony/polyfill-intl-grapheme/zipball/b740103edbdcc39602239ee8860f0f45a8eb9aa5",
2207
- "reference": "b740103edbdcc39602239ee8860f0f45a8eb9aa5",
2208
- "shasum": ""
2209
- },
2210
- "require": {
2211
- "php": ">=5.3.3"
2212
- },
2213
- "suggest": {
2214
- "ext-intl": "For best performance"
2215
- },
2216
- "type": "library",
2217
- "extra": {
2218
- "branch-alias": {
2219
- "dev-master": "1.18-dev"
2220
- },
2221
- "thanks": {
2222
- "name": "symfony/polyfill",
2223
- "url": "https://github.com/symfony/polyfill"
2224
- }
2225
- },
2226
- "autoload": {
2227
- "psr-4": {
2228
- "Symfony\\Polyfill\\Intl\\Grapheme\\": ""
2229
- },
2230
- "files": [
2231
- "bootstrap.php"
2232
- ]
2233
- },
2234
- "notification-url": "https://packagist.org/downloads/",
2235
- "license": [
2236
- "MIT"
2237
- ],
2238
- "authors": [
2239
- {
2240
- "name": "Nicolas Grekas",
2241
- "email": "p@tchwork.com"
2242
- },
2243
- {
2244
- "name": "Symfony Community",
2245
- "homepage": "https://symfony.com/contributors"
2246
- }
2247
- ],
2248
- "description": "Symfony polyfill for intl's grapheme_* functions",
2249
- "homepage": "https://symfony.com",
2250
- "keywords": [
2251
- "compatibility",
2252
- "grapheme",
2253
- "intl",
2254
- "polyfill",
2255
- "portable",
2256
- "shim"
2257
- ],
2258
- "time": "2020-07-14T12:35:20+00:00"
2259
- },
2260
- {
2261
- "name": "symfony/polyfill-intl-normalizer",
2262
- "version": "v1.18.0",
2263
- "source": {
2264
- "type": "git",
2265
- "url": "https://github.com/symfony/polyfill-intl-normalizer.git",
2266
- "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e"
2267
- },
2268
- "dist": {
2269
- "type": "zip",
2270
- "url": "https://api.github.com/repos/symfony/polyfill-intl-normalizer/zipball/37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e",
2271
- "reference": "37078a8dd4a2a1e9ab0231af7c6cb671b2ed5a7e",
2272
- "shasum": ""
2273
- },
2274
- "require": {
2275
- "php": ">=5.3.3"
2276
- },
2277
- "suggest": {
2278
- "ext-intl": "For best performance"
2279
- },
2280
- "type": "library",
2281
- "extra": {
2282
- "branch-alias": {
2283
- "dev-master": "1.18-dev"
2284
- },
2285
- "thanks": {
2286
- "name": "symfony/polyfill",
2287
- "url": "https://github.com/symfony/polyfill"
2288
- }
2289
- },
2290
- "autoload": {
2291
- "psr-4": {
2292
- "Symfony\\Polyfill\\Intl\\Normalizer\\": ""
2293
- },
2294
- "files": [
2295
- "bootstrap.php"
2296
- ],
2297
- "classmap": [
2298
- "Resources/stubs"
2299
- ]
2300
- },
2301
- "notification-url": "https://packagist.org/downloads/",
2302
- "license": [
2303
- "MIT"
2304
- ],
2305
- "authors": [
2306
- {
2307
- "name": "Nicolas Grekas",
2308
- "email": "p@tchwork.com"
2309
- },
2310
- {
2311
- "name": "Symfony Community",
2312
- "homepage": "https://symfony.com/contributors"
2313
- }
2314
- ],
2315
- "description": "Symfony polyfill for intl's Normalizer class and related functions",
2316
- "homepage": "https://symfony.com",
2317
- "keywords": [
2318
- "compatibility",
2319
- "intl",
2320
- "normalizer",
2321
- "polyfill",
2322
- "portable",
2323
- "shim"
2324
- ],
2325
- "time": "2020-07-14T12:35:20+00:00"
2326
- },
2327
- {
2328
- "name": "symfony/polyfill-mbstring",
2329
- "version": "v1.18.0",
2330
- "source": {
2331
- "type": "git",
2332
- "url": "https://github.com/symfony/polyfill-mbstring.git",
2333
- "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a"
2334
- },
2335
- "dist": {
2336
- "type": "zip",
2337
- "url": "https://api.github.com/repos/symfony/polyfill-mbstring/zipball/a6977d63bf9a0ad4c65cd352709e230876f9904a",
2338
- "reference": "a6977d63bf9a0ad4c65cd352709e230876f9904a",
2339
- "shasum": ""
2340
- },
2341
- "require": {
2342
- "php": ">=5.3.3"
2343
- },
2344
- "suggest": {
2345
- "ext-mbstring": "For best performance"
2346
- },
2347
- "type": "library",
2348
- "extra": {
2349
- "branch-alias": {
2350
- "dev-master": "1.18-dev"
2351
- },
2352
- "thanks": {
2353
- "name": "symfony/polyfill",
2354
- "url": "https://github.com/symfony/polyfill"
2355
- }
2356
- },
2357
- "autoload": {
2358
- "psr-4": {
2359
- "Symfony\\Polyfill\\Mbstring\\": ""
2360
- },
2361
- "files": [
2362
- "bootstrap.php"
2363
- ]
2364
- },
2365
- "notification-url": "https://packagist.org/downloads/",
2366
- "license": [
2367
- "MIT"
2368
- ],
2369
- "authors": [
2370
- {
2371
- "name": "Nicolas Grekas",
2372
- "email": "p@tchwork.com"
2373
- },
2374
- {
2375
- "name": "Symfony Community",
2376
- "homepage": "https://symfony.com/contributors"
2377
- }
2378
- ],
2379
- "description": "Symfony polyfill for the Mbstring extension",
2380
- "homepage": "https://symfony.com",
2381
- "keywords": [
2382
- "compatibility",
2383
- "mbstring",
2384
- "polyfill",
2385
- "portable",
2386
- "shim"
2387
- ],
2388
- "time": "2020-07-14T12:35:20+00:00"
2389
- },
2390
- {
2391
- "name": "symfony/polyfill-php73",
2392
- "version": "v1.18.0",
2393
- "source": {
2394
- "type": "git",
2395
- "url": "https://github.com/symfony/polyfill-php73.git",
2396
- "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca"
2397
- },
2398
- "dist": {
2399
- "type": "zip",
2400
- "url": "https://api.github.com/repos/symfony/polyfill-php73/zipball/fffa1a52a023e782cdcc221d781fe1ec8f87fcca",
2401
- "reference": "fffa1a52a023e782cdcc221d781fe1ec8f87fcca",
2402
- "shasum": ""
2403
- },
2404
- "require": {
2405
- "php": ">=5.3.3"
2406
- },
2407
- "type": "library",
2408
- "extra": {
2409
- "branch-alias": {
2410
- "dev-master": "1.18-dev"
2411
- },
2412
- "thanks": {
2413
- "name": "symfony/polyfill",
2414
- "url": "https://github.com/symfony/polyfill"
2415
- }
2416
- },
2417
- "autoload": {
2418
- "psr-4": {
2419
- "Symfony\\Polyfill\\Php73\\": ""
2420
- },
2421
- "files": [
2422
- "bootstrap.php"
2423
- ],
2424
- "classmap": [
2425
- "Resources/stubs"
2426
- ]
2427
- },
2428
- "notification-url": "https://packagist.org/downloads/",
2429
- "license": [
2430
- "MIT"
2431
- ],
2432
- "authors": [
2433
- {
2434
- "name": "Nicolas Grekas",
2435
- "email": "p@tchwork.com"
2436
- },
2437
- {
2438
- "name": "Symfony Community",
2439
- "homepage": "https://symfony.com/contributors"
2440
- }
2441
- ],
2442
- "description": "Symfony polyfill backporting some PHP 7.3+ features to lower PHP versions",
2443
- "homepage": "https://symfony.com",
2444
- "keywords": [
2445
- "compatibility",
2446
- "polyfill",
2447
- "portable",
2448
- "shim"
2449
- ],
2450
- "time": "2020-07-14T12:35:20+00:00"
2451
- },
2452
- {
2453
- "name": "symfony/polyfill-php80",
2454
- "version": "v1.18.0",
2455
- "source": {
2456
- "type": "git",
2457
- "url": "https://github.com/symfony/polyfill-php80.git",
2458
- "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981"
2459
- },
2460
- "dist": {
2461
- "type": "zip",
2462
- "url": "https://api.github.com/repos/symfony/polyfill-php80/zipball/d87d5766cbf48d72388a9f6b85f280c8ad51f981",
2463
- "reference": "d87d5766cbf48d72388a9f6b85f280c8ad51f981",
2464
- "shasum": ""
2465
- },
2466
- "require": {
2467
- "php": ">=7.0.8"
2468
- },
2469
- "type": "library",
2470
- "extra": {
2471
- "branch-alias": {
2472
- "dev-master": "1.18-dev"
2473
- },
2474
- "thanks": {
2475
- "name": "symfony/polyfill",
2476
- "url": "https://github.com/symfony/polyfill"
2477
- }
2478
- },
2479
- "autoload": {
2480
- "psr-4": {
2481
- "Symfony\\Polyfill\\Php80\\": ""
2482
- },
2483
- "files": [
2484
- "bootstrap.php"
2485
- ],
2486
- "classmap": [
2487
- "Resources/stubs"
2488
- ]
2489
- },
2490
- "notification-url": "https://packagist.org/downloads/",
2491
- "license": [
2492
- "MIT"
2493
- ],
2494
- "authors": [
2495
- {
2496
- "name": "Ion Bazan",
2497
- "email": "ion.bazan@gmail.com"
2498
- },
2499
- {
2500
- "name": "Nicolas Grekas",
2501
- "email": "p@tchwork.com"
2502
- },
2503
- {
2504
- "name": "Symfony Community",
2505
- "homepage": "https://symfony.com/contributors"
2506
- }
2507
- ],
2508
- "description": "Symfony polyfill backporting some PHP 8.0+ features to lower PHP versions",
2509
- "homepage": "https://symfony.com",
2510
- "keywords": [
2511
- "compatibility",
2512
- "polyfill",
2513
- "portable",
2514
- "shim"
2515
- ],
2516
- "time": "2020-07-14T12:35:20+00:00"
2517
- },
2518
- {
2519
- "name": "symfony/process",
2520
- "version": "v5.1.3",
2521
- "source": {
2522
- "type": "git",
2523
- "url": "https://github.com/symfony/process.git",
2524
- "reference": "1864216226af21eb76d9477f691e7cbf198e0402"
2525
- },
2526
- "dist": {
2527
- "type": "zip",
2528
- "url": "https://api.github.com/repos/symfony/process/zipball/1864216226af21eb76d9477f691e7cbf198e0402",
2529
- "reference": "1864216226af21eb76d9477f691e7cbf198e0402",
2530
- "shasum": ""
2531
- },
2532
- "require": {
2533
- "php": ">=7.2.5",
2534
- "symfony/polyfill-php80": "^1.15"
2535
- },
2536
- "type": "library",
2537
- "extra": {
2538
- "branch-alias": {
2539
- "dev-master": "5.1-dev"
2540
- }
2541
- },
2542
- "autoload": {
2543
- "psr-4": {
2544
- "Symfony\\Component\\Process\\": ""
2545
- },
2546
- "exclude-from-classmap": [
2547
- "/Tests/"
2548
- ]
2549
- },
2550
- "notification-url": "https://packagist.org/downloads/",
2551
- "license": [
2552
- "MIT"
2553
- ],
2554
- "authors": [
2555
- {
2556
- "name": "Fabien Potencier",
2557
- "email": "fabien@symfony.com"
2558
- },
2559
- {
2560
- "name": "Symfony Community",
2561
- "homepage": "https://symfony.com/contributors"
2562
- }
2563
- ],
2564
- "description": "Symfony Process Component",
2565
- "homepage": "https://symfony.com",
2566
- "time": "2020-07-23T08:36:24+00:00"
2567
- },
2568
- {
2569
- "name": "symfony/service-contracts",
2570
- "version": "v2.1.3",
2571
- "source": {
2572
- "type": "git",
2573
- "url": "https://github.com/symfony/service-contracts.git",
2574
- "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442"
2575
- },
2576
- "dist": {
2577
- "type": "zip",
2578
- "url": "https://api.github.com/repos/symfony/service-contracts/zipball/58c7475e5457c5492c26cc740cc0ad7464be9442",
2579
- "reference": "58c7475e5457c5492c26cc740cc0ad7464be9442",
2580
- "shasum": ""
2581
- },
2582
- "require": {
2583
- "php": ">=7.2.5",
2584
- "psr/container": "^1.0"
2585
- },
2586
- "suggest": {
2587
- "symfony/service-implementation": ""
2588
- },
2589
- "type": "library",
2590
- "extra": {
2591
- "branch-alias": {
2592
- "dev-master": "2.1-dev"
2593
- },
2594
- "thanks": {
2595
- "name": "symfony/contracts",
2596
- "url": "https://github.com/symfony/contracts"
2597
- }
2598
- },
2599
- "autoload": {
2600
- "psr-4": {
2601
- "Symfony\\Contracts\\Service\\": ""
2602
- }
2603
- },
2604
- "notification-url": "https://packagist.org/downloads/",
2605
- "license": [
2606
- "MIT"
2607
- ],
2608
- "authors": [
2609
- {
2610
- "name": "Nicolas Grekas",
2611
- "email": "p@tchwork.com"
2612
- },
2613
- {
2614
- "name": "Symfony Community",
2615
- "homepage": "https://symfony.com/contributors"
2616
- }
2617
- ],
2618
- "description": "Generic abstractions related to writing services",
2619
- "homepage": "https://symfony.com",
2620
- "keywords": [
2621
- "abstractions",
2622
- "contracts",
2623
- "decoupling",
2624
- "interfaces",
2625
- "interoperability",
2626
- "standards"
2627
- ],
2628
- "time": "2020-07-06T13:23:11+00:00"
2629
- },
2630
- {
2631
- "name": "symfony/string",
2632
- "version": "v5.1.3",
2633
- "source": {
2634
- "type": "git",
2635
- "url": "https://github.com/symfony/string.git",
2636
- "reference": "f629ba9b611c76224feb21fe2bcbf0b6f992300b"
2637
- },
2638
- "dist": {
2639
- "type": "zip",
2640
- "url": "https://api.github.com/repos/symfony/string/zipball/f629ba9b611c76224feb21fe2bcbf0b6f992300b",
2641
- "reference": "f629ba9b611c76224feb21fe2bcbf0b6f992300b",
2642
- "shasum": ""
2643
- },
2644
- "require": {
2645
- "php": ">=7.2.5",
2646
- "symfony/polyfill-ctype": "~1.8",
2647
- "symfony/polyfill-intl-grapheme": "~1.0",
2648
- "symfony/polyfill-intl-normalizer": "~1.0",
2649
- "symfony/polyfill-mbstring": "~1.0",
2650
- "symfony/polyfill-php80": "~1.15"
2651
- },
2652
- "require-dev": {
2653
- "symfony/error-handler": "^4.4|^5.0",
2654
- "symfony/http-client": "^4.4|^5.0",
2655
- "symfony/translation-contracts": "^1.1|^2",
2656
- "symfony/var-exporter": "^4.4|^5.0"
2657
- },
2658
- "type": "library",
2659
- "extra": {
2660
- "branch-alias": {
2661
- "dev-master": "5.1-dev"
2662
- }
2663
- },
2664
- "autoload": {
2665
- "psr-4": {
2666
- "Symfony\\Component\\String\\": ""
2667
- },
2668
- "files": [
2669
- "Resources/functions.php"
2670
- ],
2671
- "exclude-from-classmap": [
2672
- "/Tests/"
2673
- ]
2674
- },
2675
- "notification-url": "https://packagist.org/downloads/",
2676
- "license": [
2677
- "MIT"
2678
- ],
2679
- "authors": [
2680
- {
2681
- "name": "Nicolas Grekas",
2682
- "email": "p@tchwork.com"
2683
- },
2684
- {
2685
- "name": "Symfony Community",
2686
- "homepage": "https://symfony.com/contributors"
2687
- }
2688
- ],
2689
- "description": "Symfony String component",
2690
- "homepage": "https://symfony.com",
2691
- "keywords": [
2692
- "grapheme",
2693
- "i18n",
2694
- "string",
2695
- "unicode",
2696
- "utf-8",
2697
- "utf8"
2698
- ],
2699
- "time": "2020-07-08T08:27:49+00:00"
2700
- },
2701
- {
2702
- "name": "symfony/yaml",
2703
- "version": "v5.1.3",
2704
- "source": {
2705
- "type": "git",
2706
- "url": "https://github.com/symfony/yaml.git",
2707
- "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23"
2708
- },
2709
- "dist": {
2710
- "type": "zip",
2711
- "url": "https://api.github.com/repos/symfony/yaml/zipball/ea342353a3ef4f453809acc4ebc55382231d4d23",
2712
- "reference": "ea342353a3ef4f453809acc4ebc55382231d4d23",
2713
- "shasum": ""
2714
- },
2715
- "require": {
2716
- "php": ">=7.2.5",
2717
- "symfony/deprecation-contracts": "^2.1",
2718
- "symfony/polyfill-ctype": "~1.8"
2719
- },
2720
- "conflict": {
2721
- "symfony/console": "<4.4"
2722
- },
2723
- "require-dev": {
2724
- "symfony/console": "^4.4|^5.0"
2725
- },
2726
- "suggest": {
2727
- "symfony/console": "For validating YAML files using the lint command"
2728
- },
2729
- "bin": [
2730
- "Resources/bin/yaml-lint"
2731
- ],
2732
- "type": "library",
2733
- "extra": {
2734
- "branch-alias": {
2735
- "dev-master": "5.1-dev"
2736
- }
2737
- },
2738
- "autoload": {
2739
- "psr-4": {
2740
- "Symfony\\Component\\Yaml\\": ""
2741
- },
2742
- "exclude-from-classmap": [
2743
- "/Tests/"
2744
- ]
2745
- },
2746
- "notification-url": "https://packagist.org/downloads/",
2747
- "license": [
2748
- "MIT"
2749
- ],
2750
- "authors": [
2751
- {
2752
- "name": "Fabien Potencier",
2753
- "email": "fabien@symfony.com"
2754
- },
2755
- {
2756
- "name": "Symfony Community",
2757
- "homepage": "https://symfony.com/contributors"
2758
- }
2759
- ],
2760
- "description": "Symfony Yaml Component",
2761
- "homepage": "https://symfony.com",
2762
- "time": "2020-05-20T17:43:50+00:00"
2763
- },
2764
- {
2765
- "name": "theseer/tokenizer",
2766
- "version": "1.2.0",
2767
- "source": {
2768
- "type": "git",
2769
- "url": "https://github.com/theseer/tokenizer.git",
2770
- "reference": "75a63c33a8577608444246075ea0af0d052e452a"
2771
- },
2772
- "dist": {
2773
- "type": "zip",
2774
- "url": "https://api.github.com/repos/theseer/tokenizer/zipball/75a63c33a8577608444246075ea0af0d052e452a",
2775
- "reference": "75a63c33a8577608444246075ea0af0d052e452a",
2776
- "shasum": ""
2777
- },
2778
- "require": {
2779
- "ext-dom": "*",
2780
- "ext-tokenizer": "*",
2781
- "ext-xmlwriter": "*",
2782
- "php": "^7.2 || ^8.0"
2783
- },
2784
- "type": "library",
2785
- "autoload": {
2786
- "classmap": [
2787
- "src/"
2788
- ]
2789
- },
2790
- "notification-url": "https://packagist.org/downloads/",
2791
- "license": [
2792
- "BSD-3-Clause"
2793
- ],
2794
- "authors": [
2795
- {
2796
- "name": "Arne Blankerts",
2797
- "email": "arne@blankerts.de",
2798
- "role": "Developer"
2799
- }
2800
- ],
2801
- "description": "A small library for converting tokenized PHP source code into XML and potentially other formats",
2802
- "time": "2020-07-12T23:59:07+00:00"
2803
- },
2804
- {
2805
- "name": "webmozart/assert",
2806
- "version": "1.9.1",
2807
- "source": {
2808
- "type": "git",
2809
- "url": "https://github.com/webmozart/assert.git",
2810
- "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389"
2811
- },
2812
- "dist": {
2813
- "type": "zip",
2814
- "url": "https://api.github.com/repos/webmozart/assert/zipball/bafc69caeb4d49c39fd0779086c03a3738cbb389",
2815
- "reference": "bafc69caeb4d49c39fd0779086c03a3738cbb389",
2816
- "shasum": ""
2817
- },
2818
- "require": {
2819
- "php": "^5.3.3 || ^7.0 || ^8.0",
2820
- "symfony/polyfill-ctype": "^1.8"
2821
- },
2822
- "conflict": {
2823
- "phpstan/phpstan": "<0.12.20",
2824
- "vimeo/psalm": "<3.9.1"
2825
- },
2826
- "require-dev": {
2827
- "phpunit/phpunit": "^4.8.36 || ^7.5.13"
2828
- },
2829
- "type": "library",
2830
- "autoload": {
2831
- "psr-4": {
2832
- "Webmozart\\Assert\\": "src/"
2833
- }
2834
- },
2835
- "notification-url": "https://packagist.org/downloads/",
2836
- "license": [
2837
- "MIT"
2838
- ],
2839
- "authors": [
2840
- {
2841
- "name": "Bernhard Schussek",
2842
- "email": "bschussek@gmail.com"
2843
- }
2844
- ],
2845
- "description": "Assertions to validate method input/output with nice error messages.",
2846
- "keywords": [
2847
- "assert",
2848
- "check",
2849
- "validate"
2850
- ],
2851
- "time": "2020-07-08T17:02:28+00:00"
2852
- },
2853
- {
2854
- "name": "yosymfony/resource-watcher",
2855
- "version": "v2.0.1",
2856
- "source": {
2857
- "type": "git",
2858
- "url": "https://github.com/yosymfony/resource-watcher.git",
2859
- "reference": "a8c34f704e6bd4f786c97f3c0ba65bd86cb2bd73"
2860
- },
2861
- "dist": {
2862
- "type": "zip",
2863
- "url": "https://api.github.com/repos/yosymfony/resource-watcher/zipball/a8c34f704e6bd4f786c97f3c0ba65bd86cb2bd73",
2864
- "reference": "a8c34f704e6bd4f786c97f3c0ba65bd86cb2bd73",
2865
- "shasum": ""
2866
- },
2867
- "require": {
2868
- "php": ">=5.6",
2869
- "symfony/finder": "^2.7|^3.0|^4.0|^5.0"
2870
- },
2871
- "require-dev": {
2872
- "phpunit/phpunit": "^5.7",
2873
- "symfony/filesystem": "^2.7|^3.0|^4.0|^5.0"
2874
- },
2875
- "type": "library",
2876
- "extra": {
2877
- "branch-alias": {
2878
- "dev-master": "2.0-dev"
2879
- }
2880
- },
2881
- "autoload": {
2882
- "psr-4": {
2883
- "Yosymfony\\ResourceWatcher\\": "src/"
2884
- }
2885
- },
2886
- "notification-url": "https://packagist.org/downloads/",
2887
- "license": [
2888
- "MIT"
2889
- ],
2890
- "authors": [
2891
- {
2892
- "name": "Victor Puertas",
2893
- "email": "vpgugr@gmail.com"
2894
- }
2895
- ],
2896
- "description": "A simple resource watcher using Symfony Finder",
2897
- "homepage": "http://yosymfony.com",
2898
- "keywords": [
2899
- "finder",
2900
- "resources",
2901
- "symfony",
2902
- "watcher"
2903
- ],
2904
- "time": "2020-01-04T15:36:55+00:00"
2905
- }
2906
- ],
2907
- "aliases": [],
2908
- "minimum-stability": "stable",
2909
- "stability-flags": [],
2910
- "prefer-stable": false,
2911
- "prefer-lowest": false,
2912
- "platform": {
2913
- "php": "^7.3",
2914
- "ext-curl": "*",
2915
- "ext-xml": "*",
2916
- "ext-simplexml": "*"
2917
- },
2918
- "platform-dev": []
2919
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
lets-encrypt/wizard/assets/js/wizard.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ jQuery(document).ready(function($){"use strict";var select2Dropdown=$(".rsssl-select2");if(select2Dropdown.length){select2Dropdown.select2({width:"400px",placeholder:"Select or Add",language:{noResults:function(){return'<span id="rsssl-no-results-container">'+rsssl_wizard.no_results+"</span>"}},escapeMarkup:function(markup){return markup}})}$(document).on("click","#rsssl-no-results-container",function(){console.log("clicked");select2Dropdown.val("none");select2Dropdown.trigger("change");select2Dropdown.select2("close")});var copied_element=$(".rsssl-copied-feedback").html();$(document).on("click",".rsssl-copy-content",function(){var type=$(this).data("item");var success;var data=$(".rsssl-"+type).text();var temp_element=$("<textarea>");$("body").append(temp_element);temp_element.val(data).select();try{success=document.execCommand("copy")}catch(e){success=false}temp_element.remove();if(success){$('<span class="rsssl-copied-feedback-container">'+copied_element+"</span>").insertAfter($(this));setTimeout(function(){$(".rsssl-copied-feedback-container").fadeOut("slow")},5e3)}});function maybe_show_password_delete_questions(){var deletePasswordField=$(".field-group.store_credentials");if(deletePasswordField.length){deletePasswordField.addClass("rsssl-hidden")}var passwordFields=$(".rsssl-password");if(deletePasswordField.length){passwordFields.each(function(){if(!$(this).hasClass("rsssl-hidden")){console.log("is hidden field");deletePasswordField.removeClass("rsssl-hidden")}})}}window.setTimeout(function(){$(".rsssl-hide").fadeTo(500,0).slideUp(500,function(){$(this).remove()})},2e3);function remove_after_change(){$(".rsssl-panel.rsssl-remove-after-change").fadeTo(500,0).slideUp(500,function(){$(this).remove()})}function rsssl_validate_multiple(){$(".multiple-field").each(function(){var completed=true;$(this).find("input[type=text]").each(function(){if($(this).val()===""){completed=false}});$(this).find("textarea").each(function(){if($(this).val()===""){completed=false}});var icon=$(this).closest(".rsssl-panel").find(".rsssl-multiple-field-validation i");if(completed){icon.removeClass("fa-times");icon.addClass("fa-check")}else{icon.addClass("fa-times");icon.removeClass("fa-check")}})}rsssl_validate_multiple();$(document).on("keyup",".multiple-field input[type=text]",function(){rsssl_validate_multiple()});$(document).on("keyup",".multiple-field textarea",function(){rsssl_validate_multiple()});rsssl_validate_checkboxes();$(":checkbox").change(rsssl_validate_checkboxes);function rsssl_validate_checkboxes(){$(".rsssl-validate-multicheckbox").each(function(i){var set_required=[];var all_unchecked=true;$(this).find(":checkbox").each(function(i){set_required.push($(this));if($(this).is(":checked")){all_unchecked=false}});var container=$(this).closest(".field-group").find(".rsssl-label");if(all_unchecked){container.removeClass("valid-multicheckbox");container.addClass("invalid-multicheckbox");$.each(set_required,function(index,item){item.prop("required",true);item.addClass("is-required")})}else{container.removeClass("invalid-multicheckbox");container.addClass("valid-multicheckbox");$.each(set_required,function(index,item){item.prop("required",false);item.removeClass("is-required")})}});check_conditions()}$(document).on("change","input",function(e){check_conditions();remove_after_change()});$(document).on("keyup","input",function(e){check_conditions();remove_after_change()});$(document).on("change","select",function(e){check_conditions();remove_after_change()});$(document).on("change","textarea",function(e){check_conditions();remove_after_change()});$(document).on("keyup","textarea",function(e){remove_after_change()});$(document).on("click","button",function(e){remove_after_change()});if($("input[name=step]").val()==2){setTimeout(function(){if(typeof tinymce!=="undefined"){for(var i=0;i<tinymce.editors.length;i++){tinymce.editors[i].on("NodeChange keyup",function(ed,e){remove_after_change()})}}},5e3)}$(document).on("rssslRenderConditions",check_conditions);function check_conditions(){var value;var showIfConditionMet=true;$(".condition-check-1").each(function(e){var i;for(i=1;i<4;i++){var question="rsssl_"+$(this).data("condition-question-"+i);var condition_type="AND";if(question=="rsssl_undefined")return;var condition_answer=$(this).data("condition-answer-"+i);var input=$(this).find("input[type=checkbox]");if(!input.length){input=$(this).find("input")}if(!input.length){input=$(this).find("textarea")}if(!input.length){input=$(this).find("select")}if(input.length&&input[0].hasAttribute("required")){input.addClass("is-required")}condition_answer+="";if(condition_answer.indexOf("NOT ")!==-1){condition_answer=condition_answer.replace("NOT ","");showIfConditionMet=false}else{showIfConditionMet=true}var condition_answers=[];if(condition_answer.indexOf(" OR ")!==-1){condition_answers=condition_answer.split(" OR ");condition_type="OR"}else{condition_answers=[condition_answer]}var container=$(this);var conditionMet=false;condition_answers.forEach(function(condition_answer){value=get_input_value(question);if($("select[name="+question+"]").length){value=Array($("select[name="+question+"]").val())}if($("input[name='"+question+"["+condition_answer+"]"+"']").length){if($("input[name='"+question+"["+condition_answer+"]"+"']").is(":checked")){conditionMet=true;value=[]}else{conditionMet=false;value=[]}}if(showIfConditionMet){if(conditionMet||value.indexOf(condition_answer)!=-1||value==condition_answer||condition_answer==="EMPTY"&&value==""){container.removeClass("rsssl-hidden");if(input.hasClass("is-required"))input.prop("required",true);conditionMet=true}else{container.addClass("rsssl-hidden");if(input.hasClass("is-required"))input.prop("required",false)}}else{if(conditionMet||value.indexOf(condition_answer)!=-1||value==condition_answer||condition_answer==="EMPTY"&&value==""){container.addClass("rsssl-hidden");if(input.hasClass("is-required"))input.prop("required",false)}else{container.removeClass("rsssl-hidden");if(input.hasClass("is-required"))input.prop("required",true);conditionMet=true}}});if(!conditionMet){break}}});maybe_show_password_delete_questions()}function get_input_value(fieldName){var input=$("input[name="+fieldName+"]");if(input.attr("type")==="text"||input.attr("type")==="password"){return input.val()}else{var checked_boxes=[];$("input[name="+fieldName+"]:checked").each(function(){checked_boxes[checked_boxes.length]=$(this).val()});return checked_boxes}}});
lets-encrypt/wizard/assets/select2/js/i18n/af.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/af",[],function(){return{errorLoading:function(){return"Die resultate kon nie gelaai word nie."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Verwyders asseblief "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Voer asseblief "+t+" of meer karakters";return n},loadingMore:function(){return"Meer resultate word gelaai…"},maximumSelected:function(e){var t="Kies asseblief net "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"Geen resultate gevind"},searching:function(){return"Besig…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ar.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ar",[],function(){return{errorLoading:function(){return"لا يمكن تحميل النتائج"},inputTooLong:function(e){var t=e.input.length-e.maximum;return"الرجاء حذف "+t+" عناصر"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"الرجاء إضافة "+t+" عناصر"},loadingMore:function(){return"جاري تحميل نتائج إضافية..."},maximumSelected:function(e){return"تستطيع إختيار "+e.maximum+" بنود فقط"},noResults:function(){return"لم يتم العثور على أي نتائج"},searching:function(){return"جاري البحث…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/az.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/az",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum;return t+" simvol silin"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t+" simvol daxil edin"},loadingMore:function(){return"Daha çox nəticə yüklənir…"},maximumSelected:function(e){return"Sadəcə "+e.maximum+" element seçə bilərsiniz"},noResults:function(){return"Nəticə tapılmadı"},searching:function(){return"Axtarılır…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/bg.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bg",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Моля въведете с "+t+" по-малко символ";return t>1&&(n+="a"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Моля въведете още "+t+" символ";return t>1&&(n+="a"),n},loadingMore:function(){return"Зареждат се още…"},maximumSelected:function(e){var t="Можете да направите до "+e.maximum+" ";return e.maximum>1?t+="избора":t+="избор",t},noResults:function(){return"Няма намерени съвпадения"},searching:function(){return"Търсене…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/bs.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/bs",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Preuzimanje nije uspijelo."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ca.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ca",[],function(){return{errorLoading:function(){return"La càrrega ha fallat"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Si us plau, elimina "+t+" car";return t==1?n+="àcter":n+="àcters",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Si us plau, introdueix "+t+" car";return t==1?n+="àcter":n+="àcters",n},loadingMore:function(){return"Carregant més resultats…"},maximumSelected:function(e){var t="Només es pot seleccionar "+e.maximum+" element";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No s'han trobat resultats"},searching:function(){return"Cercant…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/cs.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/cs",[],function(){function e(e,t){switch(e){case 2:return t?"dva":"dvě";case 3:return"tři";case 4:return"čtyři"}return""}return{errorLoading:function(){return"Výsledky nemohly být načteny."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadejte o jeden znak méně.":n<=4?"Prosím, zadejte o "+e(n,!0)+" znaky méně.":"Prosím, zadejte o "+n+" znaků méně."},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadejte ještě jeden znak.":n<=4?"Prosím, zadejte ještě další "+e(n,!0)+" znaky.":"Prosím, zadejte ještě dalších "+n+" znaků."},loadingMore:function(){return"Načítají se další výsledky…"},maximumSelected:function(t){var n=t.maximum;return n==1?"Můžete zvolit jen jednu položku.":n<=4?"Můžete zvolit maximálně "+e(n,!1)+" položky.":"Můžete zvolit maximálně "+n+" položek."},noResults:function(){return"Nenalezeny žádné položky."},searching:function(){return"Vyhledávání…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/da.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/da",[],function(){return{errorLoading:function(){return"Resultaterne kunne ikke indlæses."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Angiv venligst "+t+" tegn mindre"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Angiv venligst "+t+" tegn mere"},loadingMore:function(){return"Indlæser flere resultater…"},maximumSelected:function(e){var t="Du kan kun vælge "+e.maximum+" emne";return e.maximum!=1&&(t+="r"),t},noResults:function(){return"Ingen resultater fundet"},searching:function(){return"Søger…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/de.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/de",[],function(){return{errorLoading:function(){return"Die Ergebnisse konnten nicht geladen werden."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Bitte "+t+" Zeichen weniger eingeben"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Bitte "+t+" Zeichen mehr eingeben"},loadingMore:function(){return"Lade mehr Ergebnisse…"},maximumSelected:function(e){var t="Sie können nur "+e.maximum+" Eintr";return e.maximum===1?t+="ag":t+="äge",t+=" auswählen",t},noResults:function(){return"Keine Übereinstimmungen gefunden"},searching:function(){return"Suche…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/dsb.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/dsb",[],function(){var e=["znamuško","znamušce","znamuška","znamuškow"],t=["zapisk","zapiska","zapiski","zapiskow"],n=function(t,n){if(t===1)return n[0];if(t===2)return n[1];if(t>2&&t<=4)return n[2];if(t>=5)return n[3]};return{errorLoading:function(){return"Wuslědki njejsu se dali zacytaś."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Pšosym lašuj "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Pšosym zapódaj nanejmjenjej "+r+" "+n(r,e)},loadingMore:function(){return"Dalšne wuslědki se zacytaju…"},maximumSelected:function(e){return"Móžoš jano "+e.maximum+" "+n(e.maximum,t)+"wubraś."},noResults:function(){return"Žedne wuslědki namakane"},searching:function(){return"Pyta se…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/el.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/el",[],function(){return{errorLoading:function(){return"Τα αποτελέσματα δεν μπόρεσαν να φορτώσουν."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Παρακαλώ διαγράψτε "+t+" χαρακτήρ";return t==1&&(n+="α"),t!=1&&(n+="ες"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Παρακαλώ συμπληρώστε "+t+" ή περισσότερους χαρακτήρες";return n},loadingMore:function(){return"Φόρτωση περισσότερων αποτελεσμάτων…"},maximumSelected:function(e){var t="Μπορείτε να επιλέξετε μόνο "+e.maximum+" επιλογ";return e.maximum==1&&(t+="ή"),e.maximum!=1&&(t+="ές"),t},noResults:function(){return"Δεν βρέθηκαν αποτελέσματα"},searching:function(){return"Αναζήτηση…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/en.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Please delete "+t+" character";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Please enter "+t+" or more characters";return n},loadingMore:function(){return"Loading more results…"},maximumSelected:function(e){var t="You can only select "+e.maximum+" item";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/es.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/es",[],function(){return{errorLoading:function(){return"No se pudieron cargar los resultados"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor, elimine "+t+" car";return t==1?n+="ácter":n+="acteres",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Por favor, introduzca "+t+" car";return t==1?n+="ácter":n+="acteres",n},loadingMore:function(){return"Cargando más resultados…"},maximumSelected:function(e){var t="Sólo puede seleccionar "+e.maximum+" elemento";return e.maximum!=1&&(t+="s"),t},noResults:function(){return"No se encontraron resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/et.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/et",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" vähem",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Sisesta "+t+" täht";return t!=1&&(n+="e"),n+=" rohkem",n},loadingMore:function(){return"Laen tulemusi…"},maximumSelected:function(e){var t="Saad vaid "+e.maximum+" tulemus";return e.maximum==1?t+="e":t+="t",t+=" valida",t},noResults:function(){return"Tulemused puuduvad"},searching:function(){return"Otsin…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/eu.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/eu",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gutxiago",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Idatzi ";return t==1?n+="karaktere bat":n+=t+" karaktere",n+=" gehiago",n},loadingMore:function(){return"Emaitza gehiago kargatzen…"},maximumSelected:function(e){return e.maximum===1?"Elementu bakarra hauta dezakezu":e.maximum+" elementu hauta ditzakezu soilik"},noResults:function(){return"Ez da bat datorrenik aurkitu"},searching:function(){return"Bilatzen…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/fa.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fa",[],function(){return{errorLoading:function(){return"امکان بارگذاری نتایج وجود ندارد."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="لطفاً "+t+" کاراکتر را حذف نمایید";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لطفاً تعداد "+t+" کاراکتر یا بیشتر وارد نمایید";return n},loadingMore:function(){return"در حال بارگذاری نتایج بیشتر..."},maximumSelected:function(e){var t="شما تنها می‌توانید "+e.maximum+" آیتم را انتخاب نمایید";return t},noResults:function(){return"هیچ نتیجه‌ای یافت نشد"},searching:function(){return"در حال جستجو..."}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/fi.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fi",[],function(){return{errorLoading:function(){return"Tuloksia ei saatu ladattua."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Ole hyvä ja anna "+t+" merkkiä vähemmän"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Ole hyvä ja anna "+t+" merkkiä lisää"},loadingMore:function(){return"Ladataan lisää tuloksia…"},maximumSelected:function(e){return"Voit valita ainoastaan "+e.maximum+" kpl"},noResults:function(){return"Ei tuloksia"},searching:function(){return"Haetaan…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/fr.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/fr",[],function(){return{errorLoading:function(){return"Les résultats ne peuvent pas être chargés."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Supprimez "+t+" caractère"+(t>1?"s":"")},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Saisissez au moins "+t+" caractère"+(t>1?"s":"")},loadingMore:function(){return"Chargement de résultats supplémentaires…"},maximumSelected:function(e){return"Vous pouvez seulement sélectionner "+e.maximum+" élément"+(e.maximum>1?"s":"")},noResults:function(){return"Aucun résultat trouvé"},searching:function(){return"Recherche en cours…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/gl.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/gl",[],function(){return{errorLoading:function(){return"Non foi posíbel cargar os resultados."},inputTooLong:function(e){var t=e.input.length-e.maximum;return t===1?"Elimine un carácter":"Elimine "+t+" caracteres"},inputTooShort:function(e){var t=e.minimum-e.input.length;return t===1?"Engada un carácter":"Engada "+t+" caracteres"},loadingMore:function(){return"Cargando máis resultados…"},maximumSelected:function(e){return e.maximum===1?"Só pode seleccionar un elemento":"Só pode seleccionar "+e.maximum+" elementos"},noResults:function(){return"Non se atoparon resultados"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/he.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/he",[],function(){return{errorLoading:function(){return"שגיאה בטעינת התוצאות"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="נא למחוק ";return t===1?n+="תו אחד":n+=t+" תווים",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="נא להכניס ";return t===1?n+="תו אחד":n+=t+" תווים",n+=" או יותר",n},loadingMore:function(){return"טוען תוצאות נוספות…"},maximumSelected:function(e){var t="באפשרותך לבחור עד ";return e.maximum===1?t+="פריט אחד":t+=e.maximum+" פריטים",t},noResults:function(){return"לא נמצאו תוצאות"},searching:function(){return"מחפש…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/hi.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hi",[],function(){return{errorLoading:function(){return"परिणामों को लोड नहीं किया जा सका।"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" अक्षर को हटा दें";return t>1&&(n=t+" अक्षरों को हटा दें "),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="कृपया "+t+" या अधिक अक्षर दर्ज करें";return n},loadingMore:function(){return"अधिक परिणाम लोड हो रहे है..."},maximumSelected:function(e){var t="आप केवल "+e.maximum+" आइटम का चयन कर सकते हैं";return t},noResults:function(){return"कोई परिणाम नहीं मिला"},searching:function(){return"खोज रहा है..."}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/hr.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hr",[],function(){function e(e){var t=" "+e+" znak";return e%10<5&&e%10>0&&(e%100<5||e%100>19)?e%10>1&&(t+="a"):t+="ova",t}return{errorLoading:function(){return"Preuzimanje nije uspjelo."},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Unesite "+e(n)},inputTooShort:function(t){var n=t.minimum-t.input.length;return"Unesite još "+e(n)},loadingMore:function(){return"Učitavanje rezultata…"},maximumSelected:function(e){return"Maksimalan broj odabranih stavki je "+e.maximum},noResults:function(){return"Nema rezultata"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/hsb.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hsb",[],function(){var e=["znamješko","znamješce","znamješka","znamješkow"],t=["zapisk","zapiskaj","zapiski","zapiskow"],n=function(t,n){if(t===1)return n[0];if(t===2)return n[1];if(t>2&&t<=4)return n[2];if(t>=5)return n[3]};return{errorLoading:function(){return"Wuslědki njedachu so začitać."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Prošu zhašej "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Prošu zapodaj znajmjeńša "+r+" "+n(r,e)},loadingMore:function(){return"Dalše wuslědki so začitaja…"},maximumSelected:function(e){return"Móžeš jenož "+e.maximum+" "+n(e.maximum,t)+"wubrać"},noResults:function(){return"Žane wuslědki namakane"},searching:function(){return"Pyta so…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/hu.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hu",[],function(){return{errorLoading:function(){return"Az eredmények betöltése nem sikerült."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Túl hosszú. "+t+" karakterrel több, mint kellene."},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Túl rövid. Még "+t+" karakter hiányzik."},loadingMore:function(){return"Töltés…"},maximumSelected:function(e){return"Csak "+e.maximum+" elemet lehet kiválasztani."},noResults:function(){return"Nincs találat."},searching:function(){return"Keresés…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/hy.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/hy",[],function(){return{errorLoading:function(){return"Արդյունքները հնարավոր չէ բեռնել։"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Խնդրում ենք հեռացնել "+t+" նշան";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Խնդրում ենք մուտքագրել "+t+" կամ ավել նշաններ";return n},loadingMore:function(){return"Բեռնվում են նոր արդյունքներ․․․"},maximumSelected:function(e){var t="Դուք կարող եք ընտրել առավելագույնը "+e.maximum+" կետ";return t},noResults:function(){return"Արդյունքներ չեն գտնվել"},searching:function(){return"Որոնում․․․"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/id.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/id",[],function(){return{errorLoading:function(){return"Data tidak boleh diambil."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Hapuskan "+t+" huruf"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Masukkan "+t+" huruf lagi"},loadingMore:function(){return"Mengambil data…"},maximumSelected:function(e){return"Anda hanya dapat memilih "+e.maximum+" pilihan"},noResults:function(){return"Tidak ada data yang sesuai"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/is.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/is",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vinsamlegast styttið texta um "+t+" staf";return t<=1?n:n+"i"},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vinsamlegast skrifið "+t+" staf";return t>1&&(n+="i"),n+=" í viðbót",n},loadingMore:function(){return"Sæki fleiri niðurstöður…"},maximumSelected:function(e){return"Þú getur aðeins valið "+e.maximum+" atriði"},noResults:function(){return"Ekkert fannst"},searching:function(){return"Leita…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/it.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/it",[],function(){return{errorLoading:function(){return"I risultati non possono essere caricati."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Per favore cancella "+t+" caratter";return t!==1?n+="i":n+="e",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Per favore inserisci "+t+" o più caratteri";return n},loadingMore:function(){return"Caricando più risultati…"},maximumSelected:function(e){var t="Puoi selezionare solo "+e.maximum+" element";return e.maximum!==1?t+="i":t+="o",t},noResults:function(){return"Nessun risultato trovato"},searching:function(){return"Sto cercando…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ja.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ja",[],function(){return{errorLoading:function(){return"結果が読み込まれませんでした"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" 文字を削除してください";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="少なくとも "+t+" 文字を入力してください";return n},loadingMore:function(){return"読み込み中…"},maximumSelected:function(e){var t=e.maximum+" 件しか選択できません";return t},noResults:function(){return"対象が見つかりません"},searching:function(){return"検索しています…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/km.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/km",[],function(){return{errorLoading:function(){return"មិនអាចទាញយកទិន្នន័យ"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="សូមលុបចេញ "+t+" អក្សរ";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="សូមបញ្ចូល"+t+" អក្សរ រឺ ច្រើនជាងនេះ";return n},loadingMore:function(){return"កំពុងទាញយកទិន្នន័យបន្ថែម..."},maximumSelected:function(e){var t="អ្នកអាចជ្រើសរើសបានតែ "+e.maximum+" ជម្រើសប៉ុណ្ណោះ";return t},noResults:function(){return"មិនមានលទ្ធផល"},searching:function(){return"កំពុងស្វែងរក..."}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ko.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ko",[],function(){return{errorLoading:function(){return"결과를 불러올 수 없습니다."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="너무 깁니다. "+t+" 글자 지워주세요.";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="너무 짧습니다. "+t+" 글자 더 입력해주세요.";return n},loadingMore:function(){return"불러오는 중…"},maximumSelected:function(e){var t="최대 "+e.maximum+"개까지만 선택 가능합니다.";return t},noResults:function(){return"결과가 없습니다."},searching:function(){return"검색 중…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/lt.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lt",[],function(){function e(e,t,n,r){return e%10===1&&(e%100<11||e%100>19)?t:e%10>=2&&e%10<=9&&(e%100<11||e%100>19)?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Pašalinkite "+n+" simbol";return r+=e(n,"į","ius","ių"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Įrašykite dar "+n+" simbol";return r+=e(n,"į","ius","ių"),r},loadingMore:function(){return"Kraunama daugiau rezultatų…"},maximumSelected:function(t){var n="Jūs galite pasirinkti tik "+t.maximum+" element";return n+=e(t.maximum,"ą","us","ų"),n},noResults:function(){return"Atitikmenų nerasta"},searching:function(){return"Ieškoma…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/lv.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/lv",[],function(){function e(e,t,n,r){return e===11?t:e%10===1?n:r}return{inputTooLong:function(t){var n=t.input.length-t.maximum,r="Lūdzu ievadiet par "+n;return r+=" simbol"+e(n,"iem","u","iem"),r+" mazāk"},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Lūdzu ievadiet vēl "+n;return r+=" simbol"+e(n,"us","u","us"),r},loadingMore:function(){return"Datu ielāde…"},maximumSelected:function(t){var n="Jūs varat izvēlēties ne vairāk kā "+t.maximum;return n+=" element"+e(t.maximum,"us","u","us"),n},noResults:function(){return"Sakritību nav"},searching:function(){return"Meklēšana…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/mk.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/mk",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Ве молиме внесете "+e.maximum+" помалку карактер";return e.maximum!==1&&(n+="и"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Ве молиме внесете уште "+e.maximum+" карактер";return e.maximum!==1&&(n+="и"),n},loadingMore:function(){return"Вчитување резултати…"},maximumSelected:function(e){var t="Можете да изберете само "+e.maximum+" ставк";return e.maximum===1?t+="а":t+="и",t},noResults:function(){return"Нема пронајдено совпаѓања"},searching:function(){return"Пребарување…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ms.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ms",[],function(){return{errorLoading:function(){return"Keputusan tidak berjaya dimuatkan."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Sila hapuskan "+t+" aksara"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Sila masukkan "+t+" atau lebih aksara"},loadingMore:function(){return"Sedang memuatkan keputusan…"},maximumSelected:function(e){return"Anda hanya boleh memilih "+e.maximum+" pilihan"},noResults:function(){return"Tiada padanan yang ditemui"},searching:function(){return"Mencari…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/nb.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nb",[],function(){return{errorLoading:function(){return"Kunne ikke hente resultater."},inputTooLong:function(e){var t=e.input.length-e.maximum;return"Vennligst fjern "+t+" tegn"},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Vennligst skriv inn "+t+" tegn til"},loadingMore:function(){return"Laster flere resultater…"},maximumSelected:function(e){return"Du kan velge maks "+e.maximum+" elementer"},noResults:function(){return"Ingen treff"},searching:function(){return"Søker…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/nl.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/nl",[],function(){return{errorLoading:function(){return"De resultaten konden niet worden geladen."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Gelieve "+t+" karakters te verwijderen";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Gelieve "+t+" of meer karakters in te voeren";return n},loadingMore:function(){return"Meer resultaten laden…"},maximumSelected:function(e){var t=e.maximum==1?"kan":"kunnen",n="Er "+t+" maar "+e.maximum+" item";return e.maximum!=1&&(n+="s"),n+=" worden geselecteerd",n},noResults:function(){return"Geen resultaten gevonden…"},searching:function(){return"Zoeken…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/pl.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pl",[],function(){var e=["znak","znaki","znaków"],t=["element","elementy","elementów"],n=function(t,n){if(t===1)return n[0];if(t>1&&t<=4)return n[1];if(t>=5)return n[2]};return{errorLoading:function(){return"Nie można załadować wyników."},inputTooLong:function(t){var r=t.input.length-t.maximum;return"Usuń "+r+" "+n(r,e)},inputTooShort:function(t){var r=t.minimum-t.input.length;return"Podaj przynajmniej "+r+" "+n(r,e)},loadingMore:function(){return"Trwa ładowanie…"},maximumSelected:function(e){return"Możesz zaznaczyć tylko "+e.maximum+" "+n(e.maximum,t)},noResults:function(){return"Brak wyników"},searching:function(){return"Trwa wyszukiwanie…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ps.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ps",[],function(){return{errorLoading:function(){return"پايلي نه سي ترلاسه کېدای"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="د مهربانۍ لمخي "+t+" توری ړنګ کړئ";return t!=1&&(n=n.replace("توری","توري")),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="لږ تر لږه "+t+" يا ډېر توري وليکئ";return n},loadingMore:function(){return"نوري پايلي ترلاسه کيږي..."},maximumSelected:function(e){var t="تاسو يوازي "+e.maximum+" قلم په نښه کولای سی";return e.maximum!=1&&(t=t.replace("قلم","قلمونه")),t},noResults:function(){return"پايلي و نه موندل سوې"},searching:function(){return"لټول کيږي..."}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/pt-BR.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt-BR",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Apague "+t+" caracter";return t!=1&&(n+="es"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Digite "+t+" ou mais caracteres";return n},loadingMore:function(){return"Carregando mais resultados…"},maximumSelected:function(e){var t="Você só pode selecionar "+e.maximum+" ite";return e.maximum==1?t+="m":t+="ns",t},noResults:function(){return"Nenhum resultado encontrado"},searching:function(){return"Buscando…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/pt.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/pt",[],function(){return{errorLoading:function(){return"Os resultados não puderam ser carregados."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Por favor apague "+t+" ";return n+=t!=1?"caracteres":"caractere",n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Introduza "+t+" ou mais caracteres";return n},loadingMore:function(){return"A carregar mais resultados…"},maximumSelected:function(e){var t="Apenas pode seleccionar "+e.maximum+" ";return t+=e.maximum!=1?"itens":"item",t},noResults:function(){return"Sem resultados"},searching:function(){return"A procurar…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ro.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ro",[],function(){return{errorLoading:function(){return"Rezultatele nu au putut fi incărcate."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vă rugăm să ștergeți"+t+" caracter";return t!==1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vă rugăm să introduceți "+t+" sau mai multe caractere";return n},loadingMore:function(){return"Se încarcă mai multe rezultate…"},maximumSelected:function(e){var t="Aveți voie să selectați cel mult "+e.maximum;return t+=" element",e.maximum!==1&&(t+="e"),t},noResults:function(){return"Nu au fost găsite rezultate"},searching:function(){return"Căutare…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/ru.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/ru",[],function(){function e(e,t,n,r){return e%10<5&&e%10>0&&e%100<5||e%100>20?e%10>1?n:t:r}return{errorLoading:function(){return"Невозможно загрузить результаты"},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Пожалуйста, введите на "+n+" символ";return r+=e(n,"","a","ов"),r+=" меньше",r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Пожалуйста, введите еще хотя бы "+n+" символ";return r+=e(n,"","a","ов"),r},loadingMore:function(){return"Загрузка данных…"},maximumSelected:function(t){var n="Вы можете выбрать не более "+t.maximum+" элемент";return n+=e(t.maximum,"","a","ов"),n},noResults:function(){return"Совпадений не найдено"},searching:function(){return"Поиск…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/sk.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sk",[],function(){var e={2:function(e){return e?"dva":"dve"},3:function(){return"tri"},4:function(){return"štyri"}};return{errorLoading:function(){return"Výsledky sa nepodarilo načítať."},inputTooLong:function(t){var n=t.input.length-t.maximum;return n==1?"Prosím, zadajte o jeden znak menej":n>=2&&n<=4?"Prosím, zadajte o "+e[n](!0)+" znaky menej":"Prosím, zadajte o "+n+" znakov menej"},inputTooShort:function(t){var n=t.minimum-t.input.length;return n==1?"Prosím, zadajte ešte jeden znak":n<=4?"Prosím, zadajte ešte ďalšie "+e[n](!0)+" znaky":"Prosím, zadajte ešte ďalších "+n+" znakov"},loadingMore:function(){return"Načítanie ďalších výsledkov…"},maximumSelected:function(t){return t.maximum==1?"Môžete zvoliť len jednu položku":t.maximum>=2&&t.maximum<=4?"Môžete zvoliť najviac "+e[t.maximum](!1)+" položky":"Môžete zvoliť najviac "+t.maximum+" položiek"},noResults:function(){return"Nenašli sa žiadne položky"},searching:function(){return"Vyhľadávanie…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/sl.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sl",[],function(){return{errorLoading:function(){return"Zadetkov iskanja ni bilo mogoče naložiti."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Prosim zbrišite "+t+" znak";return t==2?n+="a":t!=1&&(n+="e"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Prosim vpišite še "+t+" znak";return t==2?n+="a":t!=1&&(n+="e"),n},loadingMore:function(){return"Nalagam več zadetkov…"},maximumSelected:function(e){var t="Označite lahko največ "+e.maximum+" predmet";return e.maximum==2?t+="a":e.maximum!=1&&(t+="e"),t},noResults:function(){return"Ni zadetkov."},searching:function(){return"Iščem…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/sr-Cyrl.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr-Cyrl",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Преузимање није успело."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Обришите "+n+" симбол";return r+=e(n,"","а","а"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Укуцајте бар још "+n+" симбол";return r+=e(n,"","а","а"),r},loadingMore:function(){return"Преузимање још резултата…"},maximumSelected:function(t){var n="Можете изабрати само "+t.maximum+" ставк";return n+=e(t.maximum,"у","е","и"),n},noResults:function(){return"Ништа није пронађено"},searching:function(){return"Претрага…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/sr.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sr",[],function(){function e(e,t,n,r){return e%10==1&&e%100!=11?t:e%10>=2&&e%10<=4&&(e%100<12||e%100>14)?n:r}return{errorLoading:function(){return"Preuzimanje nije uspelo."},inputTooLong:function(t){var n=t.input.length-t.maximum,r="Obrišite "+n+" simbol";return r+=e(n,"","a","a"),r},inputTooShort:function(t){var n=t.minimum-t.input.length,r="Ukucajte bar još "+n+" simbol";return r+=e(n,"","a","a"),r},loadingMore:function(){return"Preuzimanje još rezultata…"},maximumSelected:function(t){var n="Možete izabrati samo "+t.maximum+" stavk";return n+=e(t.maximum,"u","e","i"),n},noResults:function(){return"Ništa nije pronađeno"},searching:function(){return"Pretraga…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/sv.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/sv",[],function(){return{errorLoading:function(){return"Resultat kunde inte laddas."},inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vänligen sudda ut "+t+" tecken";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vänligen skriv in "+t+" eller fler tecken";return n},loadingMore:function(){return"Laddar fler resultat…"},maximumSelected:function(e){var t="Du kan max välja "+e.maximum+" element";return t},noResults:function(){return"Inga träffar"},searching:function(){return"Söker…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/th.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/th",[],function(){return{errorLoading:function(){return"ไม่สามารถค้นข้อมูลได้"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="โปรดลบออก "+t+" ตัวอักษร";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="โปรดพิมพ์เพิ่มอีก "+t+" ตัวอักษร";return n},loadingMore:function(){return"กำลังค้นข้อมูลเพิ่ม…"},maximumSelected:function(e){var t="คุณสามารถเลือกได้ไม่เกิน "+e.maximum+" รายการ";return t},noResults:function(){return"ไม่พบข้อมูล"},searching:function(){return"กำลังค้นข้อมูล…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/tk.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/tk",[],function(){return{errorLoading:function(){return"Netije ýüklenmedi."},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" harp bozuň.";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Ýene-de iň az "+t+" harp ýazyň.";return n},loadingMore:function(){return"Köpräk netije görkezilýär…"},maximumSelected:function(e){var t="Diňe "+e.maximum+" sanysyny saýlaň.";return t},noResults:function(){return"Netije tapylmady."},searching:function(){return"Gözlenýär…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/tr.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/tr",[],function(){return{errorLoading:function(){return"Sonuç yüklenemedi"},inputTooLong:function(e){var t=e.input.length-e.maximum,n=t+" karakter daha girmelisiniz";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="En az "+t+" karakter daha girmelisiniz";return n},loadingMore:function(){return"Daha fazla…"},maximumSelected:function(e){var t="Sadece "+e.maximum+" seçim yapabilirsiniz";return t},noResults:function(){return"Sonuç bulunamadı"},searching:function(){return"Aranıyor…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/uk.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/uk",[],function(){function e(e,t,n,r){return e%100>10&&e%100<15?r:e%10===1?t:e%10>1&&e%10<5?n:r}return{errorLoading:function(){return"Неможливо завантажити результати"},inputTooLong:function(t){var n=t.input.length-t.maximum;return"Будь ласка, видаліть "+n+" "+e(t.maximum,"літеру","літери","літер")},inputTooShort:function(e){var t=e.minimum-e.input.length;return"Будь ласка, введіть "+t+" або більше літер"},loadingMore:function(){return"Завантаження інших результатів…"},maximumSelected:function(t){return"Ви можете вибрати лише "+t.maximum+" "+e(t.maximum,"пункт","пункти","пунктів")},noResults:function(){return"Нічого не знайдено"},searching:function(){return"Пошук…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/vi.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/vi",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="Vui lòng nhập ít hơn "+t+" ký tự";return t!=1&&(n+="s"),n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="Vui lòng nhập nhiều hơn "+t+" ký tự";return n},loadingMore:function(){return"Đang lấy thêm kết quả…"},maximumSelected:function(e){var t="Chỉ có thể chọn được "+e.maximum+" lựa chọn";return t},noResults:function(){return"Không tìm thấy kết quả"},searching:function(){return"Đang tìm…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/zh-CN.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-CN",[],function(){return{errorLoading:function(){return"无法载入结果。"},inputTooLong:function(e){var t=e.input.length-e.maximum,n="请删除"+t+"个字符";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="请再输入至少"+t+"个字符";return n},loadingMore:function(){return"载入更多结果…"},maximumSelected:function(e){var t="最多只能选择"+e.maximum+"个项目";return t},noResults:function(){return"未找到结果"},searching:function(){return"搜索中…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/i18n/zh-TW.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd)var e=jQuery.fn.select2.amd;return e.define("select2/i18n/zh-TW",[],function(){return{inputTooLong:function(e){var t=e.input.length-e.maximum,n="請刪掉"+t+"個字元";return n},inputTooShort:function(e){var t=e.minimum-e.input.length,n="請再輸入"+t+"個字元";return n},loadingMore:function(){return"載入中…"},maximumSelected:function(e){var t="你只能選擇最多"+e.maximum+"項";return t},noResults:function(){return"沒有找到相符的項目"},searching:function(){return"搜尋中…"}}}),{define:e.define,require:e.require}})();
lets-encrypt/wizard/assets/select2/js/select2.full.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=function(root,jQuery){if(jQuery===undefined){if(typeof window!=="undefined"){jQuery=require("jquery")}else{jQuery=require("jquery")(root)}}factory(jQuery);return jQuery}}else{factory(jQuery)}})(function(jQuery){var S2=function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd){var S2=jQuery.fn.select2.amd}var S2;(function(){if(!S2||!S2.requirejs){if(!S2){S2={}}else{require=S2}var requirejs,require,define;(function(undef){var main,req,makeMap,handlers,defined={},waiting={},config={},defining={},hasOwn=Object.prototype.hasOwnProperty,aps=[].slice,jsSuffixRegExp=/\.js$/;function hasProp(obj,prop){return hasOwn.call(obj,prop)}function normalize(name,baseName){var nameParts,nameSegment,mapValue,foundMap,lastIndex,foundI,foundStarMap,starI,i,j,part,normalizedBaseParts,baseParts=baseName&&baseName.split("/"),map=config.map,starMap=map&&map["*"]||{};if(name){name=name.split("/");lastIndex=name.length-1;if(config.nodeIdCompat&&jsSuffixRegExp.test(name[lastIndex])){name[lastIndex]=name[lastIndex].replace(jsSuffixRegExp,"")}if(name[0].charAt(0)==="."&&baseParts){normalizedBaseParts=baseParts.slice(0,baseParts.length-1);name=normalizedBaseParts.concat(name)}for(i=0;i<name.length;i++){part=name[i];if(part==="."){name.splice(i,1);i-=1}else if(part===".."){if(i===0||i===1&&name[2]===".."||name[i-1]===".."){continue}else if(i>0){name.splice(i-1,2);i-=2}}}name=name.join("/")}if((baseParts||starMap)&&map){nameParts=name.split("/");for(i=nameParts.length;i>0;i-=1){nameSegment=nameParts.slice(0,i).join("/");if(baseParts){for(j=baseParts.length;j>0;j-=1){mapValue=map[baseParts.slice(0,j).join("/")];if(mapValue){mapValue=mapValue[nameSegment];if(mapValue){foundMap=mapValue;foundI=i;break}}}}if(foundMap){break}if(!foundStarMap&&starMap&&starMap[nameSegment]){foundStarMap=starMap[nameSegment];starI=i}}if(!foundMap&&foundStarMap){foundMap=foundStarMap;foundI=starI}if(foundMap){nameParts.splice(0,foundI,foundMap);name=nameParts.join("/")}}return name}function makeRequire(relName,forceSync){return function(){var args=aps.call(arguments,0);if(typeof args[0]!=="string"&&args.length===1){args.push(null)}return req.apply(undef,args.concat([relName,forceSync]))}}function makeNormalize(relName){return function(name){return normalize(name,relName)}}function makeLoad(depName){return function(value){defined[depName]=value}}function callDep(name){if(hasProp(waiting,name)){var args=waiting[name];delete waiting[name];defining[name]=true;main.apply(undef,args)}if(!hasProp(defined,name)&&!hasProp(defining,name)){throw new Error("No "+name)}return defined[name]}function splitPrefix(name){var prefix,index=name?name.indexOf("!"):-1;if(index>-1){prefix=name.substring(0,index);name=name.substring(index+1,name.length)}return[prefix,name]}function makeRelParts(relName){return relName?splitPrefix(relName):[]}makeMap=function(name,relParts){var plugin,parts=splitPrefix(name),prefix=parts[0],relResourceName=relParts[1];name=parts[1];if(prefix){prefix=normalize(prefix,relResourceName);plugin=callDep(prefix)}if(prefix){if(plugin&&plugin.normalize){name=plugin.normalize(name,makeNormalize(relResourceName))}else{name=normalize(name,relResourceName)}}else{name=normalize(name,relResourceName);parts=splitPrefix(name);prefix=parts[0];name=parts[1];if(prefix){plugin=callDep(prefix)}}return{f:prefix?prefix+"!"+name:name,n:name,pr:prefix,p:plugin}};function makeConfig(name){return function(){return config&&config.config&&config.config[name]||{}}}handlers={require:function(name){return makeRequire(name)},exports:function(name){var e=defined[name];if(typeof e!=="undefined"){return e}else{return defined[name]={}}},module:function(name){return{id:name,uri:"",exports:defined[name],config:makeConfig(name)}}};main=function(name,deps,callback,relName){var cjsModule,depName,ret,map,i,relParts,args=[],callbackType=typeof callback,usingExports;relName=relName||name;relParts=makeRelParts(relName);if(callbackType==="undefined"||callbackType==="function"){deps=!deps.length&&callback.length?["require","exports","module"]:deps;for(i=0;i<deps.length;i+=1){map=makeMap(deps[i],relParts);depName=map.f;if(depName==="require"){args[i]=handlers.require(name)}else if(depName==="exports"){args[i]=handlers.exports(name);usingExports=true}else if(depName==="module"){cjsModule=args[i]=handlers.module(name)}else if(hasProp(defined,depName)||hasProp(waiting,depName)||hasProp(defining,depName)){args[i]=callDep(depName)}else if(map.p){map.p.load(map.n,makeRequire(relName,true),makeLoad(depName),{});args[i]=defined[depName]}else{throw new Error(name+" missing "+depName)}}ret=callback?callback.apply(defined[name],args):undefined;if(name){if(cjsModule&&cjsModule.exports!==undef&&cjsModule.exports!==defined[name]){defined[name]=cjsModule.exports}else if(ret!==undef||!usingExports){defined[name]=ret}}}else if(name){defined[name]=callback}};requirejs=require=req=function(deps,callback,relName,forceSync,alt){if(typeof deps==="string"){if(handlers[deps]){return handlers[deps](callback)}return callDep(makeMap(deps,makeRelParts(callback)).f)}else if(!deps.splice){config=deps;if(config.deps){req(config.deps,config.callback)}if(!callback){return}if(callback.splice){deps=callback;callback=relName;relName=null}else{deps=undef}}callback=callback||function(){};if(typeof relName==="function"){relName=forceSync;forceSync=alt}if(forceSync){main(undef,deps,callback,relName)}else{setTimeout(function(){main(undef,deps,callback,relName)},4)}return req};req.config=function(cfg){return req(cfg)};requirejs._defined=defined;define=function(name,deps,callback){if(typeof name!=="string"){throw new Error("See almond README: incorrect module build, no module name")}if(!deps.splice){callback=deps;deps=[]}if(!hasProp(defined,name)&&!hasProp(waiting,name)){waiting[name]=[name,deps,callback]}};define.amd={jQuery:true}})();S2.requirejs=requirejs;S2.require=require;S2.define=define}})();S2.define("almond",function(){});S2.define("jquery",[],function(){var _$=jQuery||$;if(_$==null&&console&&console.error){console.error("Select2: An instance of jQuery or a jQuery-compatible library was not "+"found. Make sure that you are including jQuery before Select2 on your "+"web page.")}return _$});S2.define("select2/utils",["jquery"],function($){var Utils={};Utils.Extend=function(ChildClass,SuperClass){var __hasProp={}.hasOwnProperty;function BaseConstructor(){this.constructor=ChildClass}for(var key in SuperClass){if(__hasProp.call(SuperClass,key)){ChildClass[key]=SuperClass[key]}}BaseConstructor.prototype=SuperClass.prototype;ChildClass.prototype=new BaseConstructor;ChildClass.__super__=SuperClass.prototype;return ChildClass};function getMethods(theClass){var proto=theClass.prototype;var methods=[];for(var methodName in proto){var m=proto[methodName];if(typeof m!=="function"){continue}if(methodName==="constructor"){continue}methods.push(methodName)}return methods}Utils.Decorate=function(SuperClass,DecoratorClass){var decoratedMethods=getMethods(DecoratorClass);var superMethods=getMethods(SuperClass);function DecoratedClass(){var unshift=Array.prototype.unshift;var argCount=DecoratorClass.prototype.constructor.length;var calledConstructor=SuperClass.prototype.constructor;if(argCount>0){unshift.call(arguments,SuperClass.prototype.constructor);calledConstructor=DecoratorClass.prototype.constructor}calledConstructor.apply(this,arguments)}DecoratorClass.displayName=SuperClass.displayName;function ctr(){this.constructor=DecoratedClass}DecoratedClass.prototype=new ctr;for(var m=0;m<superMethods.length;m++){var superMethod=superMethods[m];DecoratedClass.prototype[superMethod]=SuperClass.prototype[superMethod]}var calledMethod=function(methodName){var originalMethod=function(){};if(methodName in DecoratedClass.prototype){originalMethod=DecoratedClass.prototype[methodName]}var decoratedMethod=DecoratorClass.prototype[methodName];return function(){var unshift=Array.prototype.unshift;unshift.call(arguments,originalMethod);return decoratedMethod.apply(this,arguments)}};for(var d=0;d<decoratedMethods.length;d++){var decoratedMethod=decoratedMethods[d];DecoratedClass.prototype[decoratedMethod]=calledMethod(decoratedMethod)}return DecoratedClass};var Observable=function(){this.listeners={}};Observable.prototype.on=function(event,callback){this.listeners=this.listeners||{};if(event in this.listeners){this.listeners[event].push(callback)}else{this.listeners[event]=[callback]}};Observable.prototype.trigger=function(event){var slice=Array.prototype.slice;var params=slice.call(arguments,1);this.listeners=this.listeners||{};if(params==null){params=[]}if(params.length===0){params.push({})}params[0]._type=event;if(event in this.listeners){this.invoke(this.listeners[event],slice.call(arguments,1))}if("*"in this.listeners){this.invoke(this.listeners["*"],arguments)}};Observable.prototype.invoke=function(listeners,params){for(var i=0,len=listeners.length;i<len;i++){listeners[i].apply(this,params)}};Utils.Observable=Observable;Utils.generateChars=function(length){var chars="";for(var i=0;i<length;i++){var randomChar=Math.floor(Math.random()*36);chars+=randomChar.toString(36)}return chars};Utils.bind=function(func,context){return function(){func.apply(context,arguments)}};Utils._convertData=function(data){for(var originalKey in data){var keys=originalKey.split("-");var dataLevel=data;if(keys.length===1){continue}for(var k=0;k<keys.length;k++){var key=keys[k];key=key.substring(0,1).toLowerCase()+key.substring(1);if(!(key in dataLevel)){dataLevel[key]={}}if(k==keys.length-1){dataLevel[key]=data[originalKey]}dataLevel=dataLevel[key]}delete data[originalKey]}return data};Utils.hasScroll=function(index,el){var $el=$(el);var overflowX=el.style.overflowX;var overflowY=el.style.overflowY;if(overflowX===overflowY&&(overflowY==="hidden"||overflowY==="visible")){return false}if(overflowX==="scroll"||overflowY==="scroll"){return true}return $el.innerHeight()<el.scrollHeight||$el.innerWidth()<el.scrollWidth};Utils.escapeMarkup=function(markup){var replaceMap={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};if(typeof markup!=="string"){return markup}return String(markup).replace(/[&<>"'\/\\]/g,function(match){return replaceMap[match]})};Utils.appendMany=function($element,$nodes){if($.fn.jquery.substr(0,3)==="1.7"){var $jqNodes=$();$.map($nodes,function(node){$jqNodes=$jqNodes.add(node)});$nodes=$jqNodes}$element.append($nodes)};Utils.__cache={};var id=0;Utils.GetUniqueElementId=function(element){var select2Id=element.getAttribute("data-select2-id");if(select2Id==null){if(element.id){select2Id=element.id;element.setAttribute("data-select2-id",select2Id)}else{element.setAttribute("data-select2-id",++id);select2Id=id.toString()}}return select2Id};Utils.StoreData=function(element,name,value){var id=Utils.GetUniqueElementId(element);if(!Utils.__cache[id]){Utils.__cache[id]={}}Utils.__cache[id][name]=value};Utils.GetData=function(element,name){var id=Utils.GetUniqueElementId(element);if(name){if(Utils.__cache[id]){return Utils.__cache[id][name]!=null?Utils.__cache[id][name]:$(element).data(name)}return $(element).data(name)}else{return Utils.__cache[id]}};Utils.RemoveData=function(element){var id=Utils.GetUniqueElementId(element);if(Utils.__cache[id]!=null){delete Utils.__cache[id]}};return Utils});S2.define("select2/results",["jquery","./utils"],function($,Utils){function Results($element,options,dataAdapter){this.$element=$element;this.data=dataAdapter;this.options=options;Results.__super__.constructor.call(this)}Utils.Extend(Results,Utils.Observable);Results.prototype.render=function(){var $results=$('<ul class="select2-results__options" role="tree"></ul>');if(this.options.get("multiple")){$results.attr("aria-multiselectable","true")}this.$results=$results;return $results};Results.prototype.clear=function(){this.$results.empty()};Results.prototype.displayMessage=function(params){var escapeMarkup=this.options.get("escapeMarkup");this.clear();this.hideLoading();var $message=$('<li role="treeitem" aria-live="assertive"'+' class="select2-results__option"></li>');var message=this.options.get("translations").get(params.message);$message.append(escapeMarkup(message(params.args)));$message[0].className+=" select2-results__message";this.$results.append($message)};Results.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()};Results.prototype.append=function(data){this.hideLoading();var $options=[];if(data.results==null||data.results.length===0){if(this.$results.children().length===0){this.trigger("results:message",{message:"noResults"})}return}data.results=this.sort(data.results);for(var d=0;d<data.results.length;d++){var item=data.results[d];var $option=this.option(item);$options.push($option)}this.$results.append($options)};Results.prototype.position=function($results,$dropdown){var $resultsContainer=$dropdown.find(".select2-results");$resultsContainer.append($results)};Results.prototype.sort=function(data){var sorter=this.options.get("sorter");return sorter(data)};Results.prototype.highlightFirstItem=function(){var $options=this.$results.find(".select2-results__option[aria-selected]");var $selected=$options.filter("[aria-selected=true]");if($selected.length>0){$selected.first().trigger("mouseenter")}else{$options.first().trigger("mouseenter")}this.ensureHighlightVisible()};Results.prototype.setClasses=function(){var self=this;this.data.current(function(selected){var selectedIds=$.map(selected,function(s){return s.id.toString()});var $options=self.$results.find(".select2-results__option[aria-selected]");$options.each(function(){var $option=$(this);var item=Utils.GetData(this,"data");var id=""+item.id;if(item.element!=null&&item.element.selected||item.element==null&&$.inArray(id,selectedIds)>-1){$option.attr("aria-selected","true")}else{$option.attr("aria-selected","false")}})})};Results.prototype.showLoading=function(params){this.hideLoading();var loadingMore=this.options.get("translations").get("searching");var loading={disabled:true,loading:true,text:loadingMore(params)};var $loading=this.option(loading);$loading.className+=" loading-results";this.$results.prepend($loading)};Results.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()};Results.prototype.option=function(data){var option=document.createElement("li");option.className="select2-results__option";var attrs={role:"treeitem","aria-selected":"false"};if(data.disabled){delete attrs["aria-selected"];attrs["aria-disabled"]="true"}if(data.id==null){delete attrs["aria-selected"]}if(data._resultId!=null){option.id=data._resultId}if(data.title){option.title=data.title}if(data.children){attrs.role="group";attrs["aria-label"]=data.text;delete attrs["aria-selected"]}for(var attr in attrs){var val=attrs[attr];option.setAttribute(attr,val)}if(data.children){var $option=$(option);var label=document.createElement("strong");label.className="select2-results__group";var $label=$(label);this.template(data,label);var $children=[];for(var c=0;c<data.children.length;c++){var child=data.children[c];var $child=this.option(child);$children.push($child)}var $childrenContainer=$("<ul></ul>",{class:"select2-results__options select2-results__options--nested"});$childrenContainer.append($children);$option.append(label);$option.append($childrenContainer)}else{this.template(data,option)}Utils.StoreData(option,"data",data);return option};Results.prototype.bind=function(container,$container){var self=this;var id=container.id+"-results";this.$results.attr("id",id);container.on("results:all",function(params){self.clear();self.append(params.data);if(container.isOpen()){self.setClasses();self.highlightFirstItem()}});container.on("results:append",function(params){self.append(params.data);if(container.isOpen()){self.setClasses()}});container.on("query",function(params){self.hideMessages();self.showLoading(params)});container.on("select",function(){if(!container.isOpen()){return}self.setClasses();self.highlightFirstItem()});container.on("unselect",function(){if(!container.isOpen()){return}self.setClasses();self.highlightFirstItem()});container.on("open",function(){self.$results.attr("aria-expanded","true");self.$results.attr("aria-hidden","false");self.setClasses();self.ensureHighlightVisible()});container.on("close",function(){self.$results.attr("aria-expanded","false");self.$results.attr("aria-hidden","true");self.$results.removeAttr("aria-activedescendant")});container.on("results:toggle",function(){var $highlighted=self.getHighlightedResults();if($highlighted.length===0){return}$highlighted.trigger("mouseup")});container.on("results:select",function(){var $highlighted=self.getHighlightedResults();if($highlighted.length===0){return}var data=Utils.GetData($highlighted[0],"data");if($highlighted.attr("aria-selected")=="true"){self.trigger("close",{})}else{self.trigger("select",{data:data})}});container.on("results:previous",function(){var $highlighted=self.getHighlightedResults();var $options=self.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);if(currentIndex<=0){return}var nextIndex=currentIndex-1;if($highlighted.length===0){nextIndex=0}var $next=$options.eq(nextIndex);$next.trigger("mouseenter");var currentOffset=self.$results.offset().top;var nextTop=$next.offset().top;var nextOffset=self.$results.scrollTop()+(nextTop-currentOffset);if(nextIndex===0){self.$results.scrollTop(0)}else if(nextTop-currentOffset<0){self.$results.scrollTop(nextOffset)}});container.on("results:next",function(){var $highlighted=self.getHighlightedResults();var $options=self.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);var nextIndex=currentIndex+1;if(nextIndex>=$options.length){return}var $next=$options.eq(nextIndex);$next.trigger("mouseenter");var currentOffset=self.$results.offset().top+self.$results.outerHeight(false);var nextBottom=$next.offset().top+$next.outerHeight(false);var nextOffset=self.$results.scrollTop()+nextBottom-currentOffset;if(nextIndex===0){self.$results.scrollTop(0)}else if(nextBottom>currentOffset){self.$results.scrollTop(nextOffset)}});container.on("results:focus",function(params){params.element.addClass("select2-results__option--highlighted")});container.on("results:message",function(params){self.displayMessage(params)});if($.fn.mousewheel){this.$results.on("mousewheel",function(e){var top=self.$results.scrollTop();var bottom=self.$results.get(0).scrollHeight-top+e.deltaY;var isAtTop=e.deltaY>0&&top-e.deltaY<=0;var isAtBottom=e.deltaY<0&&bottom<=self.$results.height();if(isAtTop){self.$results.scrollTop(0);e.preventDefault();e.stopPropagation()}else if(isAtBottom){self.$results.scrollTop(self.$results.get(0).scrollHeight-self.$results.height());e.preventDefault();e.stopPropagation()}})}this.$results.on("mouseup",".select2-results__option[aria-selected]",function(evt){var $this=$(this);var data=Utils.GetData(this,"data");if($this.attr("aria-selected")==="true"){if(self.options.get("multiple")){self.trigger("unselect",{originalEvent:evt,data:data})}else{self.trigger("close",{})}return}self.trigger("select",{originalEvent:evt,data:data})});this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(evt){var data=Utils.GetData(this,"data");self.getHighlightedResults().removeClass("select2-results__option--highlighted");self.trigger("results:focus",{data:data,element:$(this)})})};Results.prototype.getHighlightedResults=function(){var $highlighted=this.$results.find(".select2-results__option--highlighted");return $highlighted};Results.prototype.destroy=function(){this.$results.remove()};Results.prototype.ensureHighlightVisible=function(){var $highlighted=this.getHighlightedResults();if($highlighted.length===0){return}var $options=this.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);var currentOffset=this.$results.offset().top;var nextTop=$highlighted.offset().top;var nextOffset=this.$results.scrollTop()+(nextTop-currentOffset);var offsetDelta=nextTop-currentOffset;nextOffset-=$highlighted.outerHeight(false)*2;if(currentIndex<=2){this.$results.scrollTop(0)}else if(offsetDelta>this.$results.outerHeight()||offsetDelta<0){this.$results.scrollTop(nextOffset)}};Results.prototype.template=function(result,container){var template=this.options.get("templateResult");var escapeMarkup=this.options.get("escapeMarkup");var content=template(result,container);if(content==null){container.style.display="none"}else if(typeof content==="string"){container.innerHTML=escapeMarkup(content)}else{$(container).append(content)}};return Results});S2.define("select2/keys",[],function(){var KEYS={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};return KEYS});S2.define("select2/selection/base",["jquery","../utils","../keys"],function($,Utils,KEYS){function BaseSelection($element,options){this.$element=$element;this.options=options;BaseSelection.__super__.constructor.call(this)}Utils.Extend(BaseSelection,Utils.Observable);BaseSelection.prototype.render=function(){var $selection=$('<span class="select2-selection" role="combobox" '+' aria-haspopup="true" aria-expanded="false">'+"</span>");this._tabindex=0;if(Utils.GetData(this.$element[0],"old-tabindex")!=null){this._tabindex=Utils.GetData(this.$element[0],"old-tabindex")}else if(this.$element.attr("tabindex")!=null){this._tabindex=this.$element.attr("tabindex")}$selection.attr("title",this.$element.attr("title"));$selection.attr("tabindex",this._tabindex);this.$selection=$selection;return $selection};BaseSelection.prototype.bind=function(container,$container){var self=this;var id=container.id+"-container";var resultsId=container.id+"-results";this.container=container;this.$selection.on("focus",function(evt){self.trigger("focus",evt)});this.$selection.on("blur",function(evt){self._handleBlur(evt)});this.$selection.on("keydown",function(evt){self.trigger("keypress",evt);if(evt.which===KEYS.SPACE){evt.preventDefault()}});container.on("results:focus",function(params){self.$selection.attr("aria-activedescendant",params.data._resultId)});container.on("selection:update",function(params){self.update(params.data)});container.on("open",function(){self.$selection.attr("aria-expanded","true");self.$selection.attr("aria-owns",resultsId);self._attachCloseHandler(container)});container.on("close",function(){self.$selection.attr("aria-expanded","false");self.$selection.removeAttr("aria-activedescendant");self.$selection.removeAttr("aria-owns");self.$selection.focus();window.setTimeout(function(){self.$selection.focus()},0);self._detachCloseHandler(container)});container.on("enable",function(){self.$selection.attr("tabindex",self._tabindex)});container.on("disable",function(){self.$selection.attr("tabindex","-1")})};BaseSelection.prototype._handleBlur=function(evt){var self=this;window.setTimeout(function(){if(document.activeElement==self.$selection[0]||$.contains(self.$selection[0],document.activeElement)){return}self.trigger("blur",evt)},1)};BaseSelection.prototype._attachCloseHandler=function(container){var self=this;$(document.body).on("mousedown.select2."+container.id,function(e){var $target=$(e.target);var $select=$target.closest(".select2");var $all=$(".select2.select2-container--open");$all.each(function(){var $this=$(this);if(this==$select[0]){return}var $element=Utils.GetData(this,"element");$element.select2("close")})})};BaseSelection.prototype._detachCloseHandler=function(container){$(document.body).off("mousedown.select2."+container.id)};BaseSelection.prototype.position=function($selection,$container){var $selectionContainer=$container.find(".selection");$selectionContainer.append($selection)};BaseSelection.prototype.destroy=function(){this._detachCloseHandler(this.container)};BaseSelection.prototype.update=function(data){throw new Error("The `update` method must be defined in child classes.")};return BaseSelection});S2.define("select2/selection/single",["jquery","./base","../utils","../keys"],function($,BaseSelection,Utils,KEYS){function SingleSelection(){SingleSelection.__super__.constructor.apply(this,arguments)}Utils.Extend(SingleSelection,BaseSelection);SingleSelection.prototype.render=function(){var $selection=SingleSelection.__super__.render.call(this);$selection.addClass("select2-selection--single");$selection.html('<span class="select2-selection__rendered"></span>'+'<span class="select2-selection__arrow" role="presentation">'+'<b role="presentation"></b>'+"</span>");return $selection};SingleSelection.prototype.bind=function(container,$container){var self=this;SingleSelection.__super__.bind.apply(this,arguments);var id=container.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",id).attr("role","textbox").attr("aria-readonly","true");this.$selection.attr("aria-labelledby",id);this.$selection.on("mousedown",function(evt){if(evt.which!==1){return}self.trigger("toggle",{originalEvent:evt})});this.$selection.on("focus",function(evt){});this.$selection.on("blur",function(evt){});container.on("focus",function(evt){if(!container.isOpen()){self.$selection.focus()}})};SingleSelection.prototype.clear=function(){var $rendered=this.$selection.find(".select2-selection__rendered");$rendered.empty();$rendered.removeAttr("title")};SingleSelection.prototype.display=function(data,container){var template=this.options.get("templateSelection");var escapeMarkup=this.options.get("escapeMarkup");return escapeMarkup(template(data,container))};SingleSelection.prototype.selectionContainer=function(){return $("<span></span>")};SingleSelection.prototype.update=function(data){if(data.length===0){this.clear();return}var selection=data[0];var $rendered=this.$selection.find(".select2-selection__rendered");var formatted=this.display(selection,$rendered);$rendered.empty().append(formatted);$rendered.attr("title",selection.title||selection.text)};return SingleSelection});S2.define("select2/selection/multiple",["jquery","./base","../utils"],function($,BaseSelection,Utils){function MultipleSelection($element,options){MultipleSelection.__super__.constructor.apply(this,arguments)}Utils.Extend(MultipleSelection,BaseSelection);MultipleSelection.prototype.render=function(){var $selection=MultipleSelection.__super__.render.call(this);$selection.addClass("select2-selection--multiple");$selection.html('<ul class="select2-selection__rendered"></ul>');return $selection};MultipleSelection.prototype.bind=function(container,$container){var self=this;MultipleSelection.__super__.bind.apply(this,arguments);this.$selection.on("click",function(evt){self.trigger("toggle",{originalEvent:evt})});this.$selection.on("click",".select2-selection__choice__remove",function(evt){if(self.options.get("disabled")){return}var $remove=$(this);var $selection=$remove.parent();var data=Utils.GetData($selection[0],"data");self.trigger("unselect",{originalEvent:evt,data:data})})};MultipleSelection.prototype.clear=function(){var $rendered=this.$selection.find(".select2-selection__rendered");$rendered.empty();$rendered.removeAttr("title")};MultipleSelection.prototype.display=function(data,container){var template=this.options.get("templateSelection");var escapeMarkup=this.options.get("escapeMarkup");return escapeMarkup(template(data,container))};MultipleSelection.prototype.selectionContainer=function(){var $container=$('<li class="select2-selection__choice">'+'<span class="select2-selection__choice__remove" role="presentation">'+"&times;"+"</span>"+"</li>");return $container};MultipleSelection.prototype.update=function(data){this.clear();if(data.length===0){return}var $selections=[];for(var d=0;d<data.length;d++){var selection=data[d];var $selection=this.selectionContainer();var formatted=this.display(selection,$selection);$selection.append(formatted);$selection.attr("title",selection.title||selection.text);Utils.StoreData($selection[0],"data",selection);$selections.push($selection)}var $rendered=this.$selection.find(".select2-selection__rendered");Utils.appendMany($rendered,$selections)};return MultipleSelection});S2.define("select2/selection/placeholder",["../utils"],function(Utils){function Placeholder(decorated,$element,options){this.placeholder=this.normalizePlaceholder(options.get("placeholder"));decorated.call(this,$element,options)}Placeholder.prototype.normalizePlaceholder=function(_,placeholder){if(typeof placeholder==="string"){placeholder={id:"",text:placeholder}}return placeholder};Placeholder.prototype.createPlaceholder=function(decorated,placeholder){var $placeholder=this.selectionContainer();$placeholder.html(this.display(placeholder));$placeholder.addClass("select2-selection__placeholder").removeClass("select2-selection__choice");return $placeholder};Placeholder.prototype.update=function(decorated,data){var singlePlaceholder=data.length==1&&data[0].id!=this.placeholder.id;var multipleSelections=data.length>1;if(multipleSelections||singlePlaceholder){return decorated.call(this,data)}this.clear();var $placeholder=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append($placeholder)};return Placeholder});S2.define("select2/selection/allowClear",["jquery","../keys","../utils"],function($,KEYS,Utils){function AllowClear(){}AllowClear.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);if(this.placeholder==null){if(this.options.get("debug")&&window.console&&console.error){console.error("Select2: The `allowClear` option should be used in combination "+"with the `placeholder` option.")}}this.$selection.on("mousedown",".select2-selection__clear",function(evt){self._handleClear(evt)});container.on("keypress",function(evt){self._handleKeyboardClear(evt,container)})};AllowClear.prototype._handleClear=function(_,evt){if(this.options.get("disabled")){return}var $clear=this.$selection.find(".select2-selection__clear");if($clear.length===0){return}evt.stopPropagation();var data=Utils.GetData($clear[0],"data");var previousVal=this.$element.val();this.$element.val(this.placeholder.id);var unselectData={data:data};this.trigger("clear",unselectData);if(unselectData.prevented){this.$element.val(previousVal);return}for(var d=0;d<data.length;d++){unselectData={data:data[d]};this.trigger("unselect",unselectData);if(unselectData.prevented){this.$element.val(previousVal);return}}this.$element.trigger("change");this.trigger("toggle",{})};AllowClear.prototype._handleKeyboardClear=function(_,evt,container){if(container.isOpen()){return}if(evt.which==KEYS.DELETE||evt.which==KEYS.BACKSPACE){this._handleClear(evt)}};AllowClear.prototype.update=function(decorated,data){decorated.call(this,data);if(this.$selection.find(".select2-selection__placeholder").length>0||data.length===0){return}var $remove=$('<span class="select2-selection__clear">'+"&times;"+"</span>");Utils.StoreData($remove[0],"data",data);this.$selection.find(".select2-selection__rendered").prepend($remove)};return AllowClear});S2.define("select2/selection/search",["jquery","../utils","../keys"],function($,Utils,KEYS){function Search(decorated,$element,options){decorated.call(this,$element,options)}Search.prototype.render=function(decorated){var $search=$('<li class="select2-search select2-search--inline">'+'<input class="select2-search__field" type="search" tabindex="-1"'+' autocomplete="off" autocorrect="off" autocapitalize="none"'+' spellcheck="false" role="textbox" aria-autocomplete="list" />'+"</li>");this.$searchContainer=$search;this.$search=$search.find("input");var $rendered=decorated.call(this);this._transferTabIndex();return $rendered};Search.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("open",function(){self.$search.trigger("focus")});container.on("close",function(){self.$search.val("");self.$search.removeAttr("aria-activedescendant");self.$search.trigger("focus")});container.on("enable",function(){self.$search.prop("disabled",false);self._transferTabIndex()});container.on("disable",function(){self.$search.prop("disabled",true)});container.on("focus",function(evt){self.$search.trigger("focus")});container.on("results:focus",function(params){self.$search.attr("aria-activedescendant",params.id)});this.$selection.on("focusin",".select2-search--inline",function(evt){self.trigger("focus",evt)});this.$selection.on("focusout",".select2-search--inline",function(evt){self._handleBlur(evt)});this.$selection.on("keydown",".select2-search--inline",function(evt){evt.stopPropagation();self.trigger("keypress",evt);self._keyUpPrevented=evt.isDefaultPrevented();var key=evt.which;if(key===KEYS.BACKSPACE&&self.$search.val()===""){var $previousChoice=self.$searchContainer.prev(".select2-selection__choice");if($previousChoice.length>0){var item=Utils.GetData($previousChoice[0],"data");self.searchRemoveChoice(item);evt.preventDefault()}}});var msie=document.documentMode;var disableInputEvents=msie&&msie<=11;this.$selection.on("input.searchcheck",".select2-search--inline",function(evt){if(disableInputEvents){self.$selection.off("input.search input.searchcheck");return}self.$selection.off("keyup.search")});this.$selection.on("keyup.search input.search",".select2-search--inline",function(evt){if(disableInputEvents&&evt.type==="input"){self.$selection.off("input.search input.searchcheck");return}var key=evt.which;if(key==KEYS.SHIFT||key==KEYS.CTRL||key==KEYS.ALT){return}if(key==KEYS.TAB){return}self.handleSearch(evt)})};Search.prototype._transferTabIndex=function(decorated){this.$search.attr("tabindex",this.$selection.attr("tabindex"));this.$selection.attr("tabindex","-1")};Search.prototype.createPlaceholder=function(decorated,placeholder){this.$search.attr("placeholder",placeholder.text)};Search.prototype.update=function(decorated,data){var searchHadFocus=this.$search[0]==document.activeElement;this.$search.attr("placeholder","");decorated.call(this,data);this.$selection.find(".select2-selection__rendered").append(this.$searchContainer);this.resizeSearch();if(searchHadFocus){var isTagInput=this.$element.find("[data-select2-tag]").length;if(isTagInput){this.$element.focus()}else{this.$search.focus()}}};Search.prototype.handleSearch=function(){this.resizeSearch();if(!this._keyUpPrevented){var input=this.$search.val();this.trigger("query",{term:input})}this._keyUpPrevented=false};Search.prototype.searchRemoveChoice=function(decorated,item){this.trigger("unselect",{data:item});this.$search.val(item.text);this.handleSearch()};Search.prototype.resizeSearch=function(){this.$search.css("width","25px");var width="";if(this.$search.attr("placeholder")!==""){width=this.$selection.find(".select2-selection__rendered").innerWidth()}else{var minimumWidth=this.$search.val().length+1;width=minimumWidth*.75+"em"}this.$search.css("width",width)};return Search});S2.define("select2/selection/eventRelay",["jquery"],function($){function EventRelay(){}EventRelay.prototype.bind=function(decorated,container,$container){var self=this;var relayEvents=["open","opening","close","closing","select","selecting","unselect","unselecting","clear","clearing"];var preventableEvents=["opening","closing","selecting","unselecting","clearing"];decorated.call(this,container,$container);container.on("*",function(name,params){if($.inArray(name,relayEvents)===-1){return}params=params||{};var evt=$.Event("select2:"+name,{params:params});self.$element.trigger(evt);if($.inArray(name,preventableEvents)===-1){return}params.prevented=evt.isDefaultPrevented()})};return EventRelay});S2.define("select2/translation",["jquery","require"],function($,require){function Translation(dict){this.dict=dict||{}}Translation.prototype.all=function(){return this.dict};Translation.prototype.get=function(key){return this.dict[key]};Translation.prototype.extend=function(translation){this.dict=$.extend({},translation.all(),this.dict)};Translation._cache={};Translation.loadPath=function(path){if(!(path in Translation._cache)){var translations=require(path);Translation._cache[path]=translations}return new Translation(Translation._cache[path])};return Translation});S2.define("select2/diacritics",[],function(){var diacritics={"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};return diacritics});S2.define("select2/data/base",["../utils"],function(Utils){function BaseAdapter($element,options){BaseAdapter.__super__.constructor.call(this)}Utils.Extend(BaseAdapter,Utils.Observable);BaseAdapter.prototype.current=function(callback){throw new Error("The `current` method must be defined in child classes.")};BaseAdapter.prototype.query=function(params,callback){throw new Error("The `query` method must be defined in child classes.")};BaseAdapter.prototype.bind=function(container,$container){};BaseAdapter.prototype.destroy=function(){};BaseAdapter.prototype.generateResultId=function(container,data){var id=container.id+"-result-";id+=Utils.generateChars(4);if(data.id!=null){id+="-"+data.id.toString()}else{id+="-"+Utils.generateChars(4)}return id};return BaseAdapter});S2.define("select2/data/select",["./base","../utils","jquery"],function(BaseAdapter,Utils,$){function SelectAdapter($element,options){this.$element=$element;this.options=options;SelectAdapter.__super__.constructor.call(this)}Utils.Extend(SelectAdapter,BaseAdapter);SelectAdapter.prototype.current=function(callback){var data=[];var self=this;this.$element.find(":selected").each(function(){var $option=$(this);var option=self.item($option);data.push(option)});callback(data)};SelectAdapter.prototype.select=function(data){var self=this;data.selected=true;if($(data.element).is("option")){data.element.selected=true;this.$element.trigger("change");return}if(this.$element.prop("multiple")){this.current(function(currentData){var val=[];data=[data];data.push.apply(data,currentData);for(var d=0;d<data.length;d++){var id=data[d].id;if($.inArray(id,val)===-1){val.push(id)}}self.$element.val(val);self.$element.trigger("change")})}else{var val=data.id;this.$element.val(val);this.$element.trigger("change")}};SelectAdapter.prototype.unselect=function(data){var self=this;if(!this.$element.prop("multiple")){return}data.selected=false;if($(data.element).is("option")){data.element.selected=false;this.$element.trigger("change");return}this.current(function(currentData){var val=[];for(var d=0;d<currentData.length;d++){var id=currentData[d].id;if(id!==data.id&&$.inArray(id,val)===-1){val.push(id)}}self.$element.val(val);self.$element.trigger("change")})};SelectAdapter.prototype.bind=function(container,$container){var self=this;this.container=container;container.on("select",function(params){self.select(params.data)});container.on("unselect",function(params){self.unselect(params.data)})};SelectAdapter.prototype.destroy=function(){this.$element.find("*").each(function(){Utils.RemoveData(this)})};SelectAdapter.prototype.query=function(params,callback){var data=[];var self=this;var $options=this.$element.children();$options.each(function(){var $option=$(this);if(!$option.is("option")&&!$option.is("optgroup")){return}var option=self.item($option);var matches=self.matches(params,option);if(matches!==null){data.push(matches)}});callback({results:data})};SelectAdapter.prototype.addOptions=function($options){Utils.appendMany(this.$element,$options)};SelectAdapter.prototype.option=function(data){var option;if(data.children){option=document.createElement("optgroup");option.label=data.text}else{option=document.createElement("option");if(option.textContent!==undefined){option.textContent=data.text}else{option.innerText=data.text}}if(data.id!==undefined){option.value=data.id}if(data.disabled){option.disabled=true}if(data.selected){option.selected=true}if(data.title){option.title=data.title}var $option=$(option);var normalizedData=this._normalizeItem(data);normalizedData.element=option;Utils.StoreData(option,"data",normalizedData);return $option};SelectAdapter.prototype.item=function($option){var data={};data=Utils.GetData($option[0],"data");if(data!=null){return data}if($option.is("option")){data={id:$option.val(),text:$option.text(),disabled:$option.prop("disabled"),selected:$option.prop("selected"),title:$option.prop("title")}}else if($option.is("optgroup")){data={text:$option.prop("label"),children:[],title:$option.prop("title")};var $children=$option.children("option");var children=[];for(var c=0;c<$children.length;c++){var $child=$($children[c]);var child=this.item($child);children.push(child)}data.children=children}data=this._normalizeItem(data);data.element=$option[0];Utils.StoreData($option[0],"data",data);return data};SelectAdapter.prototype._normalizeItem=function(item){if(item!==Object(item)){item={id:item,text:item}}item=$.extend({},{text:""},item);var defaults={selected:false,disabled:false};if(item.id!=null){item.id=item.id.toString()}if(item.text!=null){item.text=item.text.toString()}if(item._resultId==null&&item.id&&this.container!=null){item._resultId=this.generateResultId(this.container,item)}return $.extend({},defaults,item)};SelectAdapter.prototype.matches=function(params,data){var matcher=this.options.get("matcher");return matcher(params,data)};return SelectAdapter});S2.define("select2/data/array",["./select","../utils","jquery"],function(SelectAdapter,Utils,$){function ArrayAdapter($element,options){var data=options.get("data")||[];ArrayAdapter.__super__.constructor.call(this,$element,options);this.addOptions(this.convertToOptions(data))}Utils.Extend(ArrayAdapter,SelectAdapter);ArrayAdapter.prototype.select=function(data){var $option=this.$element.find("option").filter(function(i,elm){return elm.value==data.id.toString()});if($option.length===0){$option=this.option(data);this.addOptions($option)}ArrayAdapter.__super__.select.call(this,data)};ArrayAdapter.prototype.convertToOptions=function(data){var self=this;var $existing=this.$element.find("option");var existingIds=$existing.map(function(){return self.item($(this)).id}).get();var $options=[];function onlyItem(item){return function(){return $(this).val()==item.id}}for(var d=0;d<data.length;d++){var item=this._normalizeItem(data[d]);if($.inArray(item.id,existingIds)>=0){var $existingOption=$existing.filter(onlyItem(item));var existingData=this.item($existingOption);var newData=$.extend(true,{},item,existingData);var $newOption=this.option(newData);$existingOption.replaceWith($newOption);continue}var $option=this.option(item);if(item.children){var $children=this.convertToOptions(item.children);Utils.appendMany($option,$children)}$options.push($option)}return $options};return ArrayAdapter});S2.define("select2/data/ajax",["./array","../utils","jquery"],function(ArrayAdapter,Utils,$){function AjaxAdapter($element,options){this.ajaxOptions=this._applyDefaults(options.get("ajax"));if(this.ajaxOptions.processResults!=null){this.processResults=this.ajaxOptions.processResults}AjaxAdapter.__super__.constructor.call(this,$element,options)}Utils.Extend(AjaxAdapter,ArrayAdapter);AjaxAdapter.prototype._applyDefaults=function(options){var defaults={data:function(params){return $.extend({},params,{q:params.term})},transport:function(params,success,failure){var $request=$.ajax(params);$request.then(success);$request.fail(failure);return $request}};return $.extend({},defaults,options,true)};AjaxAdapter.prototype.processResults=function(results){return results};AjaxAdapter.prototype.query=function(params,callback){var matches=[];var self=this;if(this._request!=null){if($.isFunction(this._request.abort)){this._request.abort()}this._request=null}var options=$.extend({type:"GET"},this.ajaxOptions);if(typeof options.url==="function"){options.url=options.url.call(this.$element,params)}if(typeof options.data==="function"){options.data=options.data.call(this.$element,params)}function request(){var $request=options.transport(options,function(data){var results=self.processResults(data,params);if(self.options.get("debug")&&window.console&&console.error){if(!results||!results.results||!$.isArray(results.results)){console.error("Select2: The AJAX results did not return an array in the "+"`results` key of the response.")}}callback(results)},function(){if("status"in $request&&($request.status===0||$request.status==="0")){return}self.trigger("results:message",{message:"errorLoading"})});self._request=$request}if(this.ajaxOptions.delay&&params.term!=null){if(this._queryTimeout){window.clearTimeout(this._queryTimeout)}this._queryTimeout=window.setTimeout(request,this.ajaxOptions.delay)}else{request()}};return AjaxAdapter});S2.define("select2/data/tags",["jquery"],function($){function Tags(decorated,$element,options){var tags=options.get("tags");var createTag=options.get("createTag");if(createTag!==undefined){this.createTag=createTag}var insertTag=options.get("insertTag");if(insertTag!==undefined){this.insertTag=insertTag}decorated.call(this,$element,options);if($.isArray(tags)){for(var t=0;t<tags.length;t++){var tag=tags[t];var item=this._normalizeItem(tag);var $option=this.option(item);this.$element.append($option)}}}Tags.prototype.query=function(decorated,params,callback){var self=this;this._removeOldTags();if(params.term==null||params.page!=null){decorated.call(this,params,callback);return}function wrapper(obj,child){var data=obj.results;for(var i=0;i<data.length;i++){var option=data[i];var checkChildren=option.children!=null&&!wrapper({results:option.children},true);var optionText=(option.text||"").toUpperCase();var paramsTerm=(params.term||"").toUpperCase();var checkText=optionText===paramsTerm;if(checkText||checkChildren){if(child){return false}obj.data=data;callback(obj);return}}if(child){return true}var tag=self.createTag(params);if(tag!=null){var $option=self.option(tag);$option.attr("data-select2-tag",true);self.addOptions([$option]);self.insertTag(data,tag)}obj.results=data;callback(obj)}decorated.call(this,params,wrapper)};Tags.prototype.createTag=function(decorated,params){var term=$.trim(params.term);if(term===""){return null}return{id:term,text:term}};Tags.prototype.insertTag=function(_,data,tag){data.unshift(tag)};Tags.prototype._removeOldTags=function(_){var tag=this._lastTag;var $options=this.$element.find("option[data-select2-tag]");$options.each(function(){if(this.selected){return}$(this).remove()})};return Tags});S2.define("select2/data/tokenizer",["jquery"],function($){function Tokenizer(decorated,$element,options){var tokenizer=options.get("tokenizer");if(tokenizer!==undefined){this.tokenizer=tokenizer}decorated.call(this,$element,options)}Tokenizer.prototype.bind=function(decorated,container,$container){decorated.call(this,container,$container);this.$search=container.dropdown.$search||container.selection.$search||$container.find(".select2-search__field")};Tokenizer.prototype.query=function(decorated,params,callback){var self=this;function createAndSelect(data){var item=self._normalizeItem(data);var $existingOptions=self.$element.find("option").filter(function(){return $(this).val()===item.id});if(!$existingOptions.length){var $option=self.option(item);$option.attr("data-select2-tag",true);self._removeOldTags();self.addOptions([$option])}select(item)}function select(data){self.trigger("select",{data:data})}params.term=params.term||"";var tokenData=this.tokenizer(params,this.options,createAndSelect);if(tokenData.term!==params.term){if(this.$search.length){this.$search.val(tokenData.term);this.$search.focus()}params.term=tokenData.term}decorated.call(this,params,callback)};Tokenizer.prototype.tokenizer=function(_,params,options,callback){var separators=options.get("tokenSeparators")||[];var term=params.term;var i=0;var createTag=this.createTag||function(params){return{id:params.term,text:params.term}};while(i<term.length){var termChar=term[i];if($.inArray(termChar,separators)===-1){i++;continue}var part=term.substr(0,i);var partParams=$.extend({},params,{term:part});var data=createTag(partParams);if(data==null){i++;continue}callback(data);term=term.substr(i+1)||"";i=0}return{term:term}};return Tokenizer});S2.define("select2/data/minimumInputLength",[],function(){function MinimumInputLength(decorated,$e,options){this.minimumInputLength=options.get("minimumInputLength");decorated.call(this,$e,options)}MinimumInputLength.prototype.query=function(decorated,params,callback){params.term=params.term||"";if(params.term.length<this.minimumInputLength){this.trigger("results:message",{message:"inputTooShort",args:{minimum:this.minimumInputLength,input:params.term,params:params}});return}decorated.call(this,params,callback)};return MinimumInputLength});S2.define("select2/data/maximumInputLength",[],function(){function MaximumInputLength(decorated,$e,options){this.maximumInputLength=options.get("maximumInputLength");decorated.call(this,$e,options)}MaximumInputLength.prototype.query=function(decorated,params,callback){params.term=params.term||"";if(this.maximumInputLength>0&&params.term.length>this.maximumInputLength){this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:params.term,params:params}});return}decorated.call(this,params,callback)};return MaximumInputLength});S2.define("select2/data/maximumSelectionLength",[],function(){function MaximumSelectionLength(decorated,$e,options){this.maximumSelectionLength=options.get("maximumSelectionLength");decorated.call(this,$e,options)}MaximumSelectionLength.prototype.query=function(decorated,params,callback){var self=this;this.current(function(currentData){var count=currentData!=null?currentData.length:0;if(self.maximumSelectionLength>0&&count>=self.maximumSelectionLength){self.trigger("results:message",{message:"maximumSelected",args:{maximum:self.maximumSelectionLength}});return}decorated.call(self,params,callback)})};return MaximumSelectionLength});S2.define("select2/dropdown",["jquery","./utils"],function($,Utils){function Dropdown($element,options){this.$element=$element;this.options=options;Dropdown.__super__.constructor.call(this)}Utils.Extend(Dropdown,Utils.Observable);Dropdown.prototype.render=function(){var $dropdown=$('<span class="select2-dropdown">'+'<span class="select2-results"></span>'+"</span>");$dropdown.attr("dir",this.options.get("dir"));this.$dropdown=$dropdown;return $dropdown};Dropdown.prototype.bind=function(){};Dropdown.prototype.position=function($dropdown,$container){};Dropdown.prototype.destroy=function(){this.$dropdown.remove()};return Dropdown});S2.define("select2/dropdown/search",["jquery","../utils"],function($,Utils){function Search(){}Search.prototype.render=function(decorated){var $rendered=decorated.call(this);var $search=$('<span class="select2-search select2-search--dropdown">'+'<input class="select2-search__field" type="search" tabindex="-1"'+' autocomplete="off" autocorrect="off" autocapitalize="none"'+' spellcheck="false" role="textbox" />'+"</span>");this.$searchContainer=$search;this.$search=$search.find("input");$rendered.prepend($search);return $rendered};Search.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);this.$search.on("keydown",function(evt){self.trigger("keypress",evt);self._keyUpPrevented=evt.isDefaultPrevented()});this.$search.on("input",function(evt){$(this).off("keyup")});this.$search.on("keyup input",function(evt){self.handleSearch(evt)});container.on("open",function(){self.$search.attr("tabindex",0);self.$search.focus();window.setTimeout(function(){self.$search.focus()},0)});container.on("close",function(){self.$search.attr("tabindex",-1);self.$search.val("");self.$search.blur()});container.on("focus",function(){if(!container.isOpen()){self.$search.focus()}});container.on("results:all",function(params){if(params.query.term==null||params.query.term===""){var showSearch=self.showSearch(params);if(showSearch){self.$searchContainer.removeClass("select2-search--hide")}else{self.$searchContainer.addClass("select2-search--hide")}}})};Search.prototype.handleSearch=function(evt){if(!this._keyUpPrevented){var input=this.$search.val();this.trigger("query",{term:input})}this._keyUpPrevented=false};Search.prototype.showSearch=function(_,params){return true};return Search});S2.define("select2/dropdown/hidePlaceholder",[],function(){function HidePlaceholder(decorated,$element,options,dataAdapter){this.placeholder=this.normalizePlaceholder(options.get("placeholder"));decorated.call(this,$element,options,dataAdapter)}HidePlaceholder.prototype.append=function(decorated,data){data.results=this.removePlaceholder(data.results);decorated.call(this,data)};HidePlaceholder.prototype.normalizePlaceholder=function(_,placeholder){if(typeof placeholder==="string"){placeholder={id:"",text:placeholder}}return placeholder};HidePlaceholder.prototype.removePlaceholder=function(_,data){var modifiedData=data.slice(0);for(var d=data.length-1;d>=0;d--){var item=data[d];if(this.placeholder.id===item.id){modifiedData.splice(d,1)}}return modifiedData};return HidePlaceholder});S2.define("select2/dropdown/infiniteScroll",["jquery"],function($){function InfiniteScroll(decorated,$element,options,dataAdapter){this.lastParams={};decorated.call(this,$element,options,dataAdapter);this.$loadingMore=this.createLoadingMore();this.loading=false}InfiniteScroll.prototype.append=function(decorated,data){this.$loadingMore.remove();this.loading=false;decorated.call(this,data);if(this.showLoadingMore(data)){this.$results.append(this.$loadingMore)}};InfiniteScroll.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("query",function(params){self.lastParams=params;self.loading=true});container.on("query:append",function(params){self.lastParams=params;self.loading=true});this.$results.on("scroll",function(){var isLoadMoreVisible=$.contains(document.documentElement,self.$loadingMore[0]);if(self.loading||!isLoadMoreVisible){return}var currentOffset=self.$results.offset().top+self.$results.outerHeight(false);var loadingMoreOffset=self.$loadingMore.offset().top+self.$loadingMore.outerHeight(false);if(currentOffset+50>=loadingMoreOffset){self.loadMore()}})};InfiniteScroll.prototype.loadMore=function(){this.loading=true;var params=$.extend({},{page:1},this.lastParams);params.page++;this.trigger("query:append",params)};InfiniteScroll.prototype.showLoadingMore=function(_,data){return data.pagination&&data.pagination.more};InfiniteScroll.prototype.createLoadingMore=function(){var $option=$("<li "+'class="select2-results__option select2-results__option--load-more"'+'role="treeitem" aria-disabled="true"></li>');var message=this.options.get("translations").get("loadingMore");$option.html(message(this.lastParams));return $option};return InfiniteScroll});S2.define("select2/dropdown/attachBody",["jquery","../utils"],function($,Utils){function AttachBody(decorated,$element,options){this.$dropdownParent=options.get("dropdownParent")||$(document.body);decorated.call(this,$element,options)}AttachBody.prototype.bind=function(decorated,container,$container){var self=this;var setupResultsEvents=false;decorated.call(this,container,$container);container.on("open",function(){self._showDropdown();self._attachPositioningHandler(container);if(!setupResultsEvents){setupResultsEvents=true;container.on("results:all",function(){self._positionDropdown();self._resizeDropdown()});container.on("results:append",function(){self._positionDropdown();self._resizeDropdown()})}});container.on("close",function(){self._hideDropdown();self._detachPositioningHandler(container)});this.$dropdownContainer.on("mousedown",function(evt){evt.stopPropagation()})};AttachBody.prototype.destroy=function(decorated){decorated.call(this);this.$dropdownContainer.remove()};AttachBody.prototype.position=function(decorated,$dropdown,$container){$dropdown.attr("class",$container.attr("class"));$dropdown.removeClass("select2");$dropdown.addClass("select2-container--open");$dropdown.css({position:"absolute",top:-999999});this.$container=$container};AttachBody.prototype.render=function(decorated){var $container=$("<span></span>");var $dropdown=decorated.call(this);$container.append($dropdown);this.$dropdownContainer=$container;return $container};AttachBody.prototype._hideDropdown=function(decorated){this.$dropdownContainer.detach()};AttachBody.prototype._attachPositioningHandler=function(decorated,container){var self=this;var scrollEvent="scroll.select2."+container.id;var resizeEvent="resize.select2."+container.id;var orientationEvent="orientationchange.select2."+container.id;var $watchers=this.$container.parents().filter(Utils.hasScroll);$watchers.each(function(){Utils.StoreData(this,"select2-scroll-position",{x:$(this).scrollLeft(),y:$(this).scrollTop()})});$watchers.on(scrollEvent,function(ev){var position=Utils.GetData(this,"select2-scroll-position");$(this).scrollTop(position.y)});$(window).on(scrollEvent+" "+resizeEvent+" "+orientationEvent,function(e){self._positionDropdown();self._resizeDropdown()})};AttachBody.prototype._detachPositioningHandler=function(decorated,container){var scrollEvent="scroll.select2."+container.id;var resizeEvent="resize.select2."+container.id;var orientationEvent="orientationchange.select2."+container.id;var $watchers=this.$container.parents().filter(Utils.hasScroll);$watchers.off(scrollEvent);$(window).off(scrollEvent+" "+resizeEvent+" "+orientationEvent)};AttachBody.prototype._positionDropdown=function(){var $window=$(window);var isCurrentlyAbove=this.$dropdown.hasClass("select2-dropdown--above");var isCurrentlyBelow=this.$dropdown.hasClass("select2-dropdown--below");var newDirection=null;var offset=this.$container.offset();offset.bottom=offset.top+this.$container.outerHeight(false);var container={height:this.$container.outerHeight(false)};container.top=offset.top;container.bottom=offset.top+container.height;var dropdown={height:this.$dropdown.outerHeight(false)};var viewport={top:$window.scrollTop(),bottom:$window.scrollTop()+$window.height()};var enoughRoomAbove=viewport.top<offset.top-dropdown.height;var enoughRoomBelow=viewport.bottom>offset.bottom+dropdown.height;var css={left:offset.left,top:container.bottom};var $offsetParent=this.$dropdownParent;if($offsetParent.css("position")==="static"){$offsetParent=$offsetParent.offsetParent()}var parentOffset=$offsetParent.offset();css.top-=parentOffset.top;css.left-=parentOffset.left;if(!isCurrentlyAbove&&!isCurrentlyBelow){newDirection="below"}if(!enoughRoomBelow&&enoughRoomAbove&&!isCurrentlyAbove){newDirection="above"}else if(!enoughRoomAbove&&enoughRoomBelow&&isCurrentlyAbove){newDirection="below"}if(newDirection=="above"||isCurrentlyAbove&&newDirection!=="below"){css.top=container.top-parentOffset.top-dropdown.height}if(newDirection!=null){this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+newDirection);this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+newDirection)}this.$dropdownContainer.css(css)};AttachBody.prototype._resizeDropdown=function(){var css={width:this.$container.outerWidth(false)+"px"};if(this.options.get("dropdownAutoWidth")){css.minWidth=css.width;css.position="relative";css.width="auto"}this.$dropdown.css(css)};AttachBody.prototype._showDropdown=function(decorated){this.$dropdownContainer.appendTo(this.$dropdownParent);this._positionDropdown();this._resizeDropdown()};return AttachBody});S2.define("select2/dropdown/minimumResultsForSearch",[],function(){function countResults(data){var count=0;for(var d=0;d<data.length;d++){var item=data[d];if(item.children){count+=countResults(item.children)}else{count++}}return count}function MinimumResultsForSearch(decorated,$element,options,dataAdapter){this.minimumResultsForSearch=options.get("minimumResultsForSearch");if(this.minimumResultsForSearch<0){this.minimumResultsForSearch=Infinity}decorated.call(this,$element,options,dataAdapter)}MinimumResultsForSearch.prototype.showSearch=function(decorated,params){if(countResults(params.data.results)<this.minimumResultsForSearch){return false}return decorated.call(this,params)};return MinimumResultsForSearch});S2.define("select2/dropdown/selectOnClose",["../utils"],function(Utils){function SelectOnClose(){}SelectOnClose.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("close",function(params){self._handleSelectOnClose(params)})};SelectOnClose.prototype._handleSelectOnClose=function(_,params){if(params&&params.originalSelect2Event!=null){var event=params.originalSelect2Event;if(event._type==="select"||event._type==="unselect"){return}}var $highlightedResults=this.getHighlightedResults();if($highlightedResults.length<1){return}var data=Utils.GetData($highlightedResults[0],"data");if(data.element!=null&&data.element.selected||data.element==null&&data.selected){return}this.trigger("select",{data:data})};return SelectOnClose});S2.define("select2/dropdown/closeOnSelect",[],function(){function CloseOnSelect(){}CloseOnSelect.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("select",function(evt){self._selectTriggered(evt)});container.on("unselect",function(evt){self._selectTriggered(evt)})};CloseOnSelect.prototype._selectTriggered=function(_,evt){var originalEvent=evt.originalEvent;if(originalEvent&&originalEvent.ctrlKey){return}this.trigger("close",{originalEvent:originalEvent,originalSelect2Event:evt})};return CloseOnSelect});S2.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(args){var overChars=args.input.length-args.maximum;var message="Please delete "+overChars+" character";if(overChars!=1){message+="s"}return message},inputTooShort:function(args){var remainingChars=args.minimum-args.input.length;var message="Please enter "+remainingChars+" or more characters";return message},loadingMore:function(){return"Loading more results…"},maximumSelected:function(args){var message="You can only select "+args.maximum+" item";if(args.maximum!=1){message+="s"}return message},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}});S2.define("select2/defaults",["jquery","require","./results","./selection/single","./selection/multiple","./selection/placeholder","./selection/allowClear","./selection/search","./selection/eventRelay","./utils","./translation","./diacritics","./data/select","./data/array","./data/ajax","./data/tags","./data/tokenizer","./data/minimumInputLength","./data/maximumInputLength","./data/maximumSelectionLength","./dropdown","./dropdown/search","./dropdown/hidePlaceholder","./dropdown/infiniteScroll","./dropdown/attachBody","./dropdown/minimumResultsForSearch","./dropdown/selectOnClose","./dropdown/closeOnSelect","./i18n/en"],function($,require,ResultsList,SingleSelection,MultipleSelection,Placeholder,AllowClear,SelectionSearch,EventRelay,Utils,Translation,DIACRITICS,SelectData,ArrayData,AjaxData,Tags,Tokenizer,MinimumInputLength,MaximumInputLength,MaximumSelectionLength,Dropdown,DropdownSearch,HidePlaceholder,InfiniteScroll,AttachBody,MinimumResultsForSearch,SelectOnClose,CloseOnSelect,EnglishTranslation){function Defaults(){this.reset()}Defaults.prototype.apply=function(options){options=$.extend(true,{},this.defaults,options);if(options.dataAdapter==null){if(options.ajax!=null){options.dataAdapter=AjaxData}else if(options.data!=null){options.dataAdapter=ArrayData}else{options.dataAdapter=SelectData}if(options.minimumInputLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MinimumInputLength)}if(options.maximumInputLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MaximumInputLength)}if(options.maximumSelectionLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MaximumSelectionLength)}if(options.tags){options.dataAdapter=Utils.Decorate(options.dataAdapter,Tags)}if(options.tokenSeparators!=null||options.tokenizer!=null){options.dataAdapter=Utils.Decorate(options.dataAdapter,Tokenizer)}if(options.query!=null){var Query=require(options.amdBase+"compat/query");options.dataAdapter=Utils.Decorate(options.dataAdapter,Query)}if(options.initSelection!=null){var InitSelection=require(options.amdBase+"compat/initSelection");options.dataAdapter=Utils.Decorate(options.dataAdapter,InitSelection)}}if(options.resultsAdapter==null){options.resultsAdapter=ResultsList;if(options.ajax!=null){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,InfiniteScroll)}if(options.placeholder!=null){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,HidePlaceholder)}if(options.selectOnClose){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,SelectOnClose)}}if(options.dropdownAdapter==null){if(options.multiple){options.dropdownAdapter=Dropdown}else{var SearchableDropdown=Utils.Decorate(Dropdown,DropdownSearch);options.dropdownAdapter=SearchableDropdown}if(options.minimumResultsForSearch!==0){options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,MinimumResultsForSearch)}if(options.closeOnSelect){options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,CloseOnSelect)}if(options.dropdownCssClass!=null||options.dropdownCss!=null||options.adaptDropdownCssClass!=null){var DropdownCSS=require(options.amdBase+"compat/dropdownCss");options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,DropdownCSS)}options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,AttachBody)}if(options.selectionAdapter==null){if(options.multiple){options.selectionAdapter=MultipleSelection}else{options.selectionAdapter=SingleSelection}if(options.placeholder!=null){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,Placeholder)}if(options.allowClear){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,AllowClear)}if(options.multiple){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,SelectionSearch)}if(options.containerCssClass!=null||options.containerCss!=null||options.adaptContainerCssClass!=null){var ContainerCSS=require(options.amdBase+"compat/containerCss");options.selectionAdapter=Utils.Decorate(options.selectionAdapter,ContainerCSS)}options.selectionAdapter=Utils.Decorate(options.selectionAdapter,EventRelay)}if(typeof options.language==="string"){if(options.language.indexOf("-")>0){var languageParts=options.language.split("-");var baseLanguage=languageParts[0];options.language=[options.language,baseLanguage]}else{options.language=[options.language]}}if($.isArray(options.language)){var languages=new Translation;options.language.push("en");var languageNames=options.language;for(var l=0;l<languageNames.length;l++){var name=languageNames[l];var language={};try{language=Translation.loadPath(name)}catch(e){try{name=this.defaults.amdLanguageBase+name;language=Translation.loadPath(name)}catch(ex){if(options.debug&&window.console&&console.warn){console.warn('Select2: The language file for "'+name+'" could not be '+"automatically loaded. A fallback will be used instead.")}continue}}languages.extend(language)}options.translations=languages}else{var baseTranslation=Translation.loadPath(this.defaults.amdLanguageBase+"en");var customTranslation=new Translation(options.language);customTranslation.extend(baseTranslation);options.translations=customTranslation}return options};Defaults.prototype.reset=function(){function stripDiacritics(text){function match(a){return DIACRITICS[a]||a}return text.replace(/[^\u0000-\u007E]/g,match)}function matcher(params,data){if($.trim(params.term)===""){return data}if(data.children&&data.children.length>0){var match=$.extend(true,{},data);for(var c=data.children.length-1;c>=0;c--){var child=data.children[c];var matches=matcher(params,child);if(matches==null){match.children.splice(c,1)}}if(match.children.length>0){return match}return matcher(params,match)}var original=stripDiacritics(data.text).toUpperCase();var term=stripDiacritics(params.term).toUpperCase();if(original.indexOf(term)>-1){return data}return null}this.defaults={amdBase:"./",amdLanguageBase:"./i18n/",closeOnSelect:true,debug:false,dropdownAutoWidth:false,escapeMarkup:Utils.escapeMarkup,language:EnglishTranslation,matcher:matcher,minimumInputLength:0,maximumInputLength:0,maximumSelectionLength:0,minimumResultsForSearch:0,selectOnClose:false,sorter:function(data){return data},templateResult:function(result){return result.text},templateSelection:function(selection){return selection.text},theme:"default",width:"resolve"}};Defaults.prototype.set=function(key,value){var camelKey=$.camelCase(key);var data={};data[camelKey]=value;var convertedData=Utils._convertData(data);$.extend(true,this.defaults,convertedData)};var defaults=new Defaults;return defaults});S2.define("select2/options",["require","jquery","./defaults","./utils"],function(require,$,Defaults,Utils){function Options(options,$element){this.options=options;if($element!=null){this.fromElement($element)}this.options=Defaults.apply(this.options);if($element&&$element.is("input")){var InputCompat=require(this.get("amdBase")+"compat/inputData");this.options.dataAdapter=Utils.Decorate(this.options.dataAdapter,InputCompat)}}Options.prototype.fromElement=function($e){var excludedData=["select2"];if(this.options.multiple==null){this.options.multiple=$e.prop("multiple")}if(this.options.disabled==null){this.options.disabled=$e.prop("disabled")}if(this.options.language==null){if($e.prop("lang")){this.options.language=$e.prop("lang").toLowerCase()}else if($e.closest("[lang]").prop("lang")){this.options.language=$e.closest("[lang]").prop("lang")}}if(this.options.dir==null){if($e.prop("dir")){this.options.dir=$e.prop("dir")}else if($e.closest("[dir]").prop("dir")){this.options.dir=$e.closest("[dir]").prop("dir")}else{this.options.dir="ltr"}}$e.prop("disabled",this.options.disabled);$e.prop("multiple",this.options.multiple);if(Utils.GetData($e[0],"select2Tags")){if(this.options.debug&&window.console&&console.warn){console.warn("Select2: The `data-select2-tags` attribute has been changed to "+'use the `data-data` and `data-tags="true"` attributes and will be '+"removed in future versions of Select2.")}Utils.StoreData($e[0],"data",Utils.GetData($e[0],"select2Tags"));Utils.StoreData($e[0],"tags",true)}if(Utils.GetData($e[0],"ajaxUrl")){if(this.options.debug&&window.console&&console.warn){console.warn("Select2: The `data-ajax-url` attribute has been changed to "+"`data-ajax--url` and support for the old attribute will be removed"+" in future versions of Select2.")}$e.attr("ajax--url",Utils.GetData($e[0],"ajaxUrl"));Utils.StoreData($e[0],"ajax-Url",Utils.GetData($e[0],"ajaxUrl"))}var dataset={};if($.fn.jquery&&$.fn.jquery.substr(0,2)=="1."&&$e[0].dataset){dataset=$.extend(true,{},$e[0].dataset,Utils.GetData($e[0]))}else{dataset=Utils.GetData($e[0])}var data=$.extend(true,{},dataset);data=Utils._convertData(data);for(var key in data){if($.inArray(key,excludedData)>-1){continue}if($.isPlainObject(this.options[key])){$.extend(this.options[key],data[key])}else{this.options[key]=data[key]}}return this};Options.prototype.get=function(key){return this.options[key]};Options.prototype.set=function(key,val){this.options[key]=val};return Options});S2.define("select2/core",["jquery","./options","./utils","./keys"],function($,Options,Utils,KEYS){var Select2=function($element,options){if(Utils.GetData($element[0],"select2")!=null){Utils.GetData($element[0],"select2").destroy()}this.$element=$element;this.id=this._generateId($element);options=options||{};this.options=new Options(options,$element);Select2.__super__.constructor.call(this);var tabindex=$element.attr("tabindex")||0;Utils.StoreData($element[0],"old-tabindex",tabindex);$element.attr("tabindex","-1");var DataAdapter=this.options.get("dataAdapter");this.dataAdapter=new DataAdapter($element,this.options);var $container=this.render();this._placeContainer($container);var SelectionAdapter=this.options.get("selectionAdapter");this.selection=new SelectionAdapter($element,this.options);this.$selection=this.selection.render();this.selection.position(this.$selection,$container);var DropdownAdapter=this.options.get("dropdownAdapter");this.dropdown=new DropdownAdapter($element,this.options);this.$dropdown=this.dropdown.render();this.dropdown.position(this.$dropdown,$container);var ResultsAdapter=this.options.get("resultsAdapter");this.results=new ResultsAdapter($element,this.options,this.dataAdapter);this.$results=this.results.render();this.results.position(this.$results,this.$dropdown);var self=this;this._bindAdapters();this._registerDomEvents();this._registerDataEvents();this._registerSelectionEvents();this._registerDropdownEvents();this._registerResultsEvents();this._registerEvents();this.dataAdapter.current(function(initialData){self.trigger("selection:update",{data:initialData})});$element.addClass("select2-hidden-accessible");$element.attr("aria-hidden","true");this._syncAttributes();Utils.StoreData($element[0],"select2",this);$element.data("select2",this)};Utils.Extend(Select2,Utils.Observable);Select2.prototype._generateId=function($element){var id="";if($element.attr("id")!=null){id=$element.attr("id")}else if($element.attr("name")!=null){id=$element.attr("name")+"-"+Utils.generateChars(2)}else{id=Utils.generateChars(4)}id=id.replace(/(:|\.|\[|\]|,)/g,"");id="select2-"+id;return id};Select2.prototype._placeContainer=function($container){$container.insertAfter(this.$element);var width=this._resolveWidth(this.$element,this.options.get("width"));if(width!=null){$container.css("width",width)}};Select2.prototype._resolveWidth=function($element,method){var WIDTH=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;if(method=="resolve"){var styleWidth=this._resolveWidth($element,"style");if(styleWidth!=null){return styleWidth}return this._resolveWidth($element,"element")}if(method=="element"){var elementWidth=$element.outerWidth(false);if(elementWidth<=0){return"auto"}return elementWidth+"px"}if(method=="style"){var style=$element.attr("style");if(typeof style!=="string"){return null}var attrs=style.split(";");for(var i=0,l=attrs.length;i<l;i=i+1){var attr=attrs[i].replace(/\s/g,"");var matches=attr.match(WIDTH);if(matches!==null&&matches.length>=1){return matches[1]}}return null}return method};Select2.prototype._bindAdapters=function(){this.dataAdapter.bind(this,this.$container);this.selection.bind(this,this.$container);this.dropdown.bind(this,this.$container);this.results.bind(this,this.$container)};Select2.prototype._registerDomEvents=function(){var self=this;this.$element.on("change.select2",function(){self.dataAdapter.current(function(data){self.trigger("selection:update",{data:data})})});this.$element.on("focus.select2",function(evt){self.trigger("focus",evt)});this._syncA=Utils.bind(this._syncAttributes,this);this._syncS=Utils.bind(this._syncSubtree,this);if(this.$element[0].attachEvent){this.$element[0].attachEvent("onpropertychange",this._syncA)}var observer=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;if(observer!=null){this._observer=new observer(function(mutations){$.each(mutations,self._syncA);$.each(mutations,self._syncS)});this._observer.observe(this.$element[0],{attributes:true,childList:true,subtree:false})}else if(this.$element[0].addEventListener){this.$element[0].addEventListener("DOMAttrModified",self._syncA,false);this.$element[0].addEventListener("DOMNodeInserted",self._syncS,false);this.$element[0].addEventListener("DOMNodeRemoved",self._syncS,false)}};Select2.prototype._registerDataEvents=function(){var self=this;this.dataAdapter.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerSelectionEvents=function(){var self=this;var nonRelayEvents=["toggle","focus"];this.selection.on("toggle",function(){self.toggleDropdown()});this.selection.on("focus",function(params){self.focus(params)});this.selection.on("*",function(name,params){if($.inArray(name,nonRelayEvents)!==-1){return}self.trigger(name,params)})};Select2.prototype._registerDropdownEvents=function(){var self=this;this.dropdown.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerResultsEvents=function(){var self=this;this.results.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerEvents=function(){var self=this;this.on("open",function(){self.$container.addClass("select2-container--open")});this.on("close",function(){self.$container.removeClass("select2-container--open")});this.on("enable",function(){self.$container.removeClass("select2-container--disabled")});this.on("disable",function(){self.$container.addClass("select2-container--disabled")});this.on("blur",function(){self.$container.removeClass("select2-container--focus")});this.on("query",function(params){if(!self.isOpen()){self.trigger("open",{})}this.dataAdapter.query(params,function(data){self.trigger("results:all",{data:data,query:params})})});this.on("query:append",function(params){this.dataAdapter.query(params,function(data){self.trigger("results:append",{data:data,query:params})})});this.on("keypress",function(evt){var key=evt.which;if(self.isOpen()){if(key===KEYS.ESC||key===KEYS.TAB||key===KEYS.UP&&evt.altKey){self.close();evt.preventDefault()}else if(key===KEYS.ENTER){self.trigger("results:select",{});evt.preventDefault()}else if(key===KEYS.SPACE&&evt.ctrlKey){self.trigger("results:toggle",{});evt.preventDefault()}else if(key===KEYS.UP){self.trigger("results:previous",{});evt.preventDefault()}else if(key===KEYS.DOWN){self.trigger("results:next",{});evt.preventDefault()}}else{if(key===KEYS.ENTER||key===KEYS.SPACE||key===KEYS.DOWN&&evt.altKey){self.open();evt.preventDefault()}}})};Select2.prototype._syncAttributes=function(){this.options.set("disabled",this.$element.prop("disabled"));if(this.options.get("disabled")){if(this.isOpen()){this.close()}this.trigger("disable",{})}else{this.trigger("enable",{})}};Select2.prototype._syncSubtree=function(evt,mutations){var changed=false;var self=this;if(evt&&evt.target&&(evt.target.nodeName!=="OPTION"&&evt.target.nodeName!=="OPTGROUP")){return}if(!mutations){changed=true}else if(mutations.addedNodes&&mutations.addedNodes.length>0){for(var n=0;n<mutations.addedNodes.length;n++){var node=mutations.addedNodes[n];if(node.selected){changed=true}}}else if(mutations.removedNodes&&mutations.removedNodes.length>0){changed=true}if(changed){this.dataAdapter.current(function(currentData){self.trigger("selection:update",{data:currentData})})}};Select2.prototype.trigger=function(name,args){var actualTrigger=Select2.__super__.trigger;var preTriggerMap={open:"opening",close:"closing",select:"selecting",unselect:"unselecting",clear:"clearing"};if(args===undefined){args={}}if(name in preTriggerMap){var preTriggerName=preTriggerMap[name];var preTriggerArgs={prevented:false,name:name,args:args};actualTrigger.call(this,preTriggerName,preTriggerArgs);if(preTriggerArgs.prevented){args.prevented=true;return}}actualTrigger.call(this,name,args)};Select2.prototype.toggleDropdown=function(){if(this.options.get("disabled")){return}if(this.isOpen()){this.close()}else{this.open()}};Select2.prototype.open=function(){if(this.isOpen()){return}this.trigger("query",{})};Select2.prototype.close=function(){if(!this.isOpen()){return}this.trigger("close",{})};Select2.prototype.isOpen=function(){return this.$container.hasClass("select2-container--open")};Select2.prototype.hasFocus=function(){return this.$container.hasClass("select2-container--focus")};Select2.prototype.focus=function(data){if(this.hasFocus()){return}this.$container.addClass("select2-container--focus");this.trigger("focus",{})};Select2.prototype.enable=function(args){if(this.options.get("debug")&&window.console&&console.warn){console.warn('Select2: The `select2("enable")` method has been deprecated and will'+' be removed in later Select2 versions. Use $element.prop("disabled")'+" instead.")}if(args==null||args.length===0){args=[true]}var disabled=!args[0];this.$element.prop("disabled",disabled)};Select2.prototype.data=function(){if(this.options.get("debug")&&arguments.length>0&&window.console&&console.warn){console.warn('Select2: Data can no longer be set using `select2("data")`. You '+"should consider setting the value instead using `$element.val()`.")}var data=[];this.dataAdapter.current(function(currentData){data=currentData});return data};Select2.prototype.val=function(args){if(this.options.get("debug")&&window.console&&console.warn){console.warn('Select2: The `select2("val")` method has been deprecated and will be'+" removed in later Select2 versions. Use $element.val() instead.")}if(args==null||args.length===0){return this.$element.val()}var newVal=args[0];if($.isArray(newVal)){newVal=$.map(newVal,function(obj){return obj.toString()})}this.$element.val(newVal).trigger("change")};Select2.prototype.destroy=function(){this.$container.remove();if(this.$element[0].detachEvent){this.$element[0].detachEvent("onpropertychange",this._syncA)}if(this._observer!=null){this._observer.disconnect();this._observer=null}else if(this.$element[0].removeEventListener){this.$element[0].removeEventListener("DOMAttrModified",this._syncA,false);this.$element[0].removeEventListener("DOMNodeInserted",this._syncS,false);this.$element[0].removeEventListener("DOMNodeRemoved",this._syncS,false)}this._syncA=null;this._syncS=null;this.$element.off(".select2");this.$element.attr("tabindex",Utils.GetData(this.$element[0],"old-tabindex"));this.$element.removeClass("select2-hidden-accessible");this.$element.attr("aria-hidden","false");Utils.RemoveData(this.$element[0]);this.$element.removeData("select2");this.dataAdapter.destroy();this.selection.destroy();this.dropdown.destroy();this.results.destroy();this.dataAdapter=null;this.selection=null;this.dropdown=null;this.results=null};Select2.prototype.render=function(){var $container=$('<span class="select2 select2-container">'+'<span class="selection"></span>'+'<span class="dropdown-wrapper" aria-hidden="true"></span>'+"</span>");$container.attr("dir",this.options.get("dir"));this.$container=$container;this.$container.addClass("select2-container--"+this.options.get("theme"));Utils.StoreData($container[0],"element",this.$element);return $container};return Select2});S2.define("select2/compat/utils",["jquery"],function($){function syncCssClasses($dest,$src,adapter){var classes,replacements=[],adapted;classes=$.trim($dest.attr("class"));if(classes){classes=""+classes;$(classes.split(/\s+/)).each(function(){if(this.indexOf("select2-")===0){replacements.push(this)}})}classes=$.trim($src.attr("class"));if(classes){classes=""+classes;$(classes.split(/\s+/)).each(function(){if(this.indexOf("select2-")!==0){adapted=adapter(this);if(adapted!=null){replacements.push(adapted)}}})}$dest.attr("class",replacements.join(" "))}return{syncCssClasses:syncCssClasses}});S2.define("select2/compat/containerCss",["jquery","./utils"],function($,CompatUtils){function _containerAdapter(clazz){return null}function ContainerCSS(){}ContainerCSS.prototype.render=function(decorated){var $container=decorated.call(this);var containerCssClass=this.options.get("containerCssClass")||"";if($.isFunction(containerCssClass)){containerCssClass=containerCssClass(this.$element)}var containerCssAdapter=this.options.get("adaptContainerCssClass");containerCssAdapter=containerCssAdapter||_containerAdapter;if(containerCssClass.indexOf(":all:")!==-1){containerCssClass=containerCssClass.replace(":all:","");var _cssAdapter=containerCssAdapter;containerCssAdapter=function(clazz){var adapted=_cssAdapter(clazz);if(adapted!=null){return adapted+" "+clazz}return clazz}}var containerCss=this.options.get("containerCss")||{};if($.isFunction(containerCss)){containerCss=containerCss(this.$element)}CompatUtils.syncCssClasses($container,this.$element,containerCssAdapter);$container.css(containerCss);$container.addClass(containerCssClass);return $container};return ContainerCSS});S2.define("select2/compat/dropdownCss",["jquery","./utils"],function($,CompatUtils){function _dropdownAdapter(clazz){return null}function DropdownCSS(){}DropdownCSS.prototype.render=function(decorated){var $dropdown=decorated.call(this);var dropdownCssClass=this.options.get("dropdownCssClass")||"";if($.isFunction(dropdownCssClass)){dropdownCssClass=dropdownCssClass(this.$element)}var dropdownCssAdapter=this.options.get("adaptDropdownCssClass");dropdownCssAdapter=dropdownCssAdapter||_dropdownAdapter;if(dropdownCssClass.indexOf(":all:")!==-1){dropdownCssClass=dropdownCssClass.replace(":all:","");var _cssAdapter=dropdownCssAdapter;dropdownCssAdapter=function(clazz){var adapted=_cssAdapter(clazz);if(adapted!=null){return adapted+" "+clazz}return clazz}}var dropdownCss=this.options.get("dropdownCss")||{};if($.isFunction(dropdownCss)){dropdownCss=dropdownCss(this.$element)}CompatUtils.syncCssClasses($dropdown,this.$element,dropdownCssAdapter);$dropdown.css(dropdownCss);$dropdown.addClass(dropdownCssClass);return $dropdown};return DropdownCSS});S2.define("select2/compat/initSelection",["jquery"],function($){function InitSelection(decorated,$element,options){if(options.get("debug")&&window.console&&console.warn){console.warn("Select2: The `initSelection` option has been deprecated in favor"+" of a custom data adapter that overrides the `current` method. "+"This method is now called multiple times instead of a single "+"time when the instance is initialized. Support will be removed "+"for the `initSelection` option in future versions of Select2")}this.initSelection=options.get("initSelection");this._isInitialized=false;decorated.call(this,$element,options)}InitSelection.prototype.current=function(decorated,callback){var self=this;if(this._isInitialized){decorated.call(this,callback);return}this.initSelection.call(null,this.$element,function(data){self._isInitialized=true;if(!$.isArray(data)){data=[data]}callback(data)})};return InitSelection});S2.define("select2/compat/inputData",["jquery","../utils"],function($,Utils){function InputData(decorated,$element,options){this._currentData=[];this._valueSeparator=options.get("valueSeparator")||",";if($element.prop("type")==="hidden"){if(options.get("debug")&&console&&console.warn){console.warn("Select2: Using a hidden input with Select2 is no longer "+"supported and may stop working in the future. It is recommended "+"to use a `<select>` element instead.")}}decorated.call(this,$element,options)}InputData.prototype.current=function(_,callback){function getSelected(data,selectedIds){var selected=[];if(data.selected||$.inArray(data.id,selectedIds)!==-1){data.selected=true;selected.push(data)}else{data.selected=false}if(data.children){selected.push.apply(selected,getSelected(data.children,selectedIds))}return selected}var selected=[];for(var d=0;d<this._currentData.length;d++){var data=this._currentData[d];selected.push.apply(selected,getSelected(data,this.$element.val().split(this._valueSeparator)))}callback(selected)};InputData.prototype.select=function(_,data){if(!this.options.get("multiple")){this.current(function(allData){$.map(allData,function(data){data.selected=false})});this.$element.val(data.id);this.$element.trigger("change")}else{var value=this.$element.val();value+=this._valueSeparator+data.id;this.$element.val(value);this.$element.trigger("change")}};InputData.prototype.unselect=function(_,data){var self=this;data.selected=false;this.current(function(allData){var values=[];for(var d=0;d<allData.length;d++){var item=allData[d];if(data.id==item.id){continue}values.push(item.id)}self.$element.val(values.join(self._valueSeparator));self.$element.trigger("change")})};InputData.prototype.query=function(_,params,callback){var results=[];for(var d=0;d<this._currentData.length;d++){var data=this._currentData[d];var matches=this.matches(params,data);if(matches!==null){results.push(matches)}}callback({results:results})};InputData.prototype.addOptions=function(_,$options){var options=$.map($options,function($option){return Utils.GetData($option[0],"data")});this._currentData.push.apply(this._currentData,options)};return InputData});S2.define("select2/compat/matcher",["jquery"],function($){function oldMatcher(matcher){function wrappedMatcher(params,data){var match=$.extend(true,{},data);if(params.term==null||$.trim(params.term)===""){return match}if(data.children){for(var c=data.children.length-1;c>=0;c--){var child=data.children[c];var doesMatch=matcher(params.term,child.text,child);if(!doesMatch){match.children.splice(c,1)}}if(match.children.length>0){return match}}if(matcher(params.term,data.text,data)){return match}return null}return wrappedMatcher}return oldMatcher});S2.define("select2/compat/query",[],function(){function Query(decorated,$element,options){if(options.get("debug")&&window.console&&console.warn){console.warn("Select2: The `query` option has been deprecated in favor of a "+"custom data adapter that overrides the `query` method. Support "+"will be removed for the `query` option in future versions of "+"Select2.")}decorated.call(this,$element,options)}Query.prototype.query=function(_,params,callback){params.callback=callback;var query=this.options.get("query");query.call(null,params)};return Query});S2.define("select2/dropdown/attachContainer",[],function(){function AttachContainer(decorated,$element,options){decorated.call(this,$element,options)}AttachContainer.prototype.position=function(decorated,$dropdown,$container){var $dropdownContainer=$container.find(".dropdown-wrapper");$dropdownContainer.append($dropdown);$dropdown.addClass("select2-dropdown--below");$container.addClass("select2-container--below")};return AttachContainer});S2.define("select2/dropdown/stopPropagation",[],function(){function StopPropagation(){}StopPropagation.prototype.bind=function(decorated,container,$container){decorated.call(this,container,$container);var stoppedEvents=["blur","change","click","dblclick","focus","focusin","focusout","input","keydown","keyup","keypress","mousedown","mouseenter","mouseleave","mousemove","mouseover","mouseup","search","touchend","touchstart"];this.$dropdown.on(stoppedEvents.join(" "),function(evt){evt.stopPropagation()})};return StopPropagation});S2.define("select2/selection/stopPropagation",[],function(){function StopPropagation(){}StopPropagation.prototype.bind=function(decorated,container,$container){decorated.call(this,container,$container);var stoppedEvents=["blur","change","click","dblclick","focus","focusin","focusout","input","keydown","keyup","keypress","mousedown","mouseenter","mouseleave","mousemove","mouseover","mouseup","search","touchend","touchstart"];this.$selection.on(stoppedEvents.join(" "),function(evt){evt.stopPropagation()})};return StopPropagation});(function(factory){if(typeof S2.define==="function"&&S2.define.amd){S2.define("jquery-mousewheel",["jquery"],factory)}else if(typeof exports==="object"){module.exports=factory}else{factory(jQuery)}})(function($){var toFix=["wheel","mousewheel","DOMMouseScroll","MozMousePixelScroll"],toBind="onwheel"in document||document.documentMode>=9?["wheel"]:["mousewheel","DomMouseScroll","MozMousePixelScroll"],slice=Array.prototype.slice,nullLowestDeltaTimeout,lowestDelta;if($.event.fixHooks){for(var i=toFix.length;i;){$.event.fixHooks[toFix[--i]]=$.event.mouseHooks}}var special=$.event.special.mousewheel={version:"3.1.12",setup:function(){if(this.addEventListener){for(var i=toBind.length;i;){this.addEventListener(toBind[--i],handler,false)}}else{this.onmousewheel=handler}$.data(this,"mousewheel-line-height",special.getLineHeight(this));$.data(this,"mousewheel-page-height",special.getPageHeight(this))},teardown:function(){if(this.removeEventListener){for(var i=toBind.length;i;){this.removeEventListener(toBind[--i],handler,false)}}else{this.onmousewheel=null}$.removeData(this,"mousewheel-line-height");$.removeData(this,"mousewheel-page-height")},getLineHeight:function(elem){var $elem=$(elem),$parent=$elem["offsetParent"in $.fn?"offsetParent":"parent"]();if(!$parent.length){$parent=$("body")}return parseInt($parent.css("fontSize"),10)||parseInt($elem.css("fontSize"),10)||16},getPageHeight:function(elem){return $(elem).height()},settings:{adjustOldDeltas:true,normalizeOffset:true}};$.fn.extend({mousewheel:function(fn){return fn?this.bind("mousewheel",fn):this.trigger("mousewheel")},unmousewheel:function(fn){return this.unbind("mousewheel",fn)}});function handler(event){var orgEvent=event||window.event,args=slice.call(arguments,1),delta=0,deltaX=0,deltaY=0,absDelta=0,offsetX=0,offsetY=0;event=$.event.fix(orgEvent);event.type="mousewheel";if("detail"in orgEvent){deltaY=orgEvent.detail*-1}if("wheelDelta"in orgEvent){deltaY=orgEvent.wheelDelta}if("wheelDeltaY"in orgEvent){deltaY=orgEvent.wheelDeltaY}if("wheelDeltaX"in orgEvent){deltaX=orgEvent.wheelDeltaX*-1}if("axis"in orgEvent&&orgEvent.axis===orgEvent.HORIZONTAL_AXIS){deltaX=deltaY*-1;deltaY=0}delta=deltaY===0?deltaX:deltaY;if("deltaY"in orgEvent){deltaY=orgEvent.deltaY*-1;delta=deltaY}if("deltaX"in orgEvent){deltaX=orgEvent.deltaX;if(deltaY===0){delta=deltaX*-1}}if(deltaY===0&&deltaX===0){return}if(orgEvent.deltaMode===1){var lineHeight=$.data(this,"mousewheel-line-height");delta*=lineHeight;deltaY*=lineHeight;deltaX*=lineHeight}else if(orgEvent.deltaMode===2){var pageHeight=$.data(this,"mousewheel-page-height");delta*=pageHeight;deltaY*=pageHeight;deltaX*=pageHeight}absDelta=Math.max(Math.abs(deltaY),Math.abs(deltaX));if(!lowestDelta||absDelta<lowestDelta){lowestDelta=absDelta;if(shouldAdjustOldDeltas(orgEvent,absDelta)){lowestDelta/=40}}if(shouldAdjustOldDeltas(orgEvent,absDelta)){delta/=40;deltaX/=40;deltaY/=40}delta=Math[delta>=1?"floor":"ceil"](delta/lowestDelta);deltaX=Math[deltaX>=1?"floor":"ceil"](deltaX/lowestDelta);deltaY=Math[deltaY>=1?"floor":"ceil"](deltaY/lowestDelta);if(special.settings.normalizeOffset&&this.getBoundingClientRect){var boundingRect=this.getBoundingClientRect();offsetX=event.clientX-boundingRect.left;offsetY=event.clientY-boundingRect.top}event.deltaX=deltaX;event.deltaY=deltaY;event.deltaFactor=lowestDelta;event.offsetX=offsetX;event.offsetY=offsetY;event.deltaMode=0;args.unshift(event,delta,deltaX,deltaY);if(nullLowestDeltaTimeout){clearTimeout(nullLowestDeltaTimeout)}nullLowestDeltaTimeout=setTimeout(nullLowestDelta,200);return($.event.dispatch||$.event.handle).apply(this,args)}function nullLowestDelta(){lowestDelta=null}function shouldAdjustOldDeltas(orgEvent,absDelta){return special.settings.adjustOldDeltas&&orgEvent.type==="mousewheel"&&absDelta%120===0}});S2.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults","./select2/utils"],function($,_,Select2,Defaults,Utils){if($.fn.select2==null){var thisMethods=["open","close","destroy"];$.fn.select2=function(options){options=options||{};if(typeof options==="object"){this.each(function(){var instanceOptions=$.extend(true,{},options);var instance=new Select2($(this),instanceOptions)});return this}else if(typeof options==="string"){var ret;var args=Array.prototype.slice.call(arguments,1);this.each(function(){var instance=Utils.GetData(this,"select2");if(instance==null&&window.console&&console.error){console.error("The select2('"+options+"') method was called on an "+"element that is not using Select2.")}ret=instance[options].apply(instance,args)});if($.inArray(options,thisMethods)>-1){return this}return ret}else{throw new Error("Invalid arguments for Select2: "+options)}}}if($.fn.select2.defaults==null){$.fn.select2.defaults=Defaults}return Select2});return{define:S2.define,require:S2.require}}();var select2=S2.require("jquery.select2");jQuery.fn.select2.amd=S2;return select2});
lets-encrypt/wizard/assets/select2/js/select2.min.min.js ADDED
@@ -0,0 +1 @@
 
1
+ (function(factory){if(typeof define==="function"&&define.amd){define(["jquery"],factory)}else if(typeof module==="object"&&module.exports){module.exports=function(root,jQuery){if(jQuery===undefined){if(typeof window!=="undefined"){jQuery=require("jquery")}else{jQuery=require("jquery")(root)}}factory(jQuery);return jQuery}}else{factory(jQuery)}})(function(jQuery){var S2=function(){if(jQuery&&jQuery.fn&&jQuery.fn.select2&&jQuery.fn.select2.amd){var S2=jQuery.fn.select2.amd}var S2;(function(){if(!S2||!S2.requirejs){if(!S2){S2={}}else{require=S2}var requirejs,require,define;(function(undef){var main,req,makeMap,handlers,defined={},waiting={},config={},defining={},hasOwn=Object.prototype.hasOwnProperty,aps=[].slice,jsSuffixRegExp=/\.js$/;function hasProp(obj,prop){return hasOwn.call(obj,prop)}function normalize(name,baseName){var nameParts,nameSegment,mapValue,foundMap,lastIndex,foundI,foundStarMap,starI,i,j,part,normalizedBaseParts,baseParts=baseName&&baseName.split("/"),map=config.map,starMap=map&&map["*"]||{};if(name){name=name.split("/");lastIndex=name.length-1;if(config.nodeIdCompat&&jsSuffixRegExp.test(name[lastIndex])){name[lastIndex]=name[lastIndex].replace(jsSuffixRegExp,"")}if(name[0].charAt(0)==="."&&baseParts){normalizedBaseParts=baseParts.slice(0,baseParts.length-1);name=normalizedBaseParts.concat(name)}for(i=0;i<name.length;i++){part=name[i];if(part==="."){name.splice(i,1);i-=1}else if(part===".."){if(i===0||i===1&&name[2]===".."||name[i-1]===".."){continue}else if(i>0){name.splice(i-1,2);i-=2}}}name=name.join("/")}if((baseParts||starMap)&&map){nameParts=name.split("/");for(i=nameParts.length;i>0;i-=1){nameSegment=nameParts.slice(0,i).join("/");if(baseParts){for(j=baseParts.length;j>0;j-=1){mapValue=map[baseParts.slice(0,j).join("/")];if(mapValue){mapValue=mapValue[nameSegment];if(mapValue){foundMap=mapValue;foundI=i;break}}}}if(foundMap){break}if(!foundStarMap&&starMap&&starMap[nameSegment]){foundStarMap=starMap[nameSegment];starI=i}}if(!foundMap&&foundStarMap){foundMap=foundStarMap;foundI=starI}if(foundMap){nameParts.splice(0,foundI,foundMap);name=nameParts.join("/")}}return name}function makeRequire(relName,forceSync){return function(){var args=aps.call(arguments,0);if(typeof args[0]!=="string"&&args.length===1){args.push(null)}return req.apply(undef,args.concat([relName,forceSync]))}}function makeNormalize(relName){return function(name){return normalize(name,relName)}}function makeLoad(depName){return function(value){defined[depName]=value}}function callDep(name){if(hasProp(waiting,name)){var args=waiting[name];delete waiting[name];defining[name]=true;main.apply(undef,args)}if(!hasProp(defined,name)&&!hasProp(defining,name)){throw new Error("No "+name)}return defined[name]}function splitPrefix(name){var prefix,index=name?name.indexOf("!"):-1;if(index>-1){prefix=name.substring(0,index);name=name.substring(index+1,name.length)}return[prefix,name]}function makeRelParts(relName){return relName?splitPrefix(relName):[]}makeMap=function(name,relParts){var plugin,parts=splitPrefix(name),prefix=parts[0],relResourceName=relParts[1];name=parts[1];if(prefix){prefix=normalize(prefix,relResourceName);plugin=callDep(prefix)}if(prefix){if(plugin&&plugin.normalize){name=plugin.normalize(name,makeNormalize(relResourceName))}else{name=normalize(name,relResourceName)}}else{name=normalize(name,relResourceName);parts=splitPrefix(name);prefix=parts[0];name=parts[1];if(prefix){plugin=callDep(prefix)}}return{f:prefix?prefix+"!"+name:name,n:name,pr:prefix,p:plugin}};function makeConfig(name){return function(){return config&&config.config&&config.config[name]||{}}}handlers={require:function(name){return makeRequire(name)},exports:function(name){var e=defined[name];if(typeof e!=="undefined"){return e}else{return defined[name]={}}},module:function(name){return{id:name,uri:"",exports:defined[name],config:makeConfig(name)}}};main=function(name,deps,callback,relName){var cjsModule,depName,ret,map,i,relParts,args=[],callbackType=typeof callback,usingExports;relName=relName||name;relParts=makeRelParts(relName);if(callbackType==="undefined"||callbackType==="function"){deps=!deps.length&&callback.length?["require","exports","module"]:deps;for(i=0;i<deps.length;i+=1){map=makeMap(deps[i],relParts);depName=map.f;if(depName==="require"){args[i]=handlers.require(name)}else if(depName==="exports"){args[i]=handlers.exports(name);usingExports=true}else if(depName==="module"){cjsModule=args[i]=handlers.module(name)}else if(hasProp(defined,depName)||hasProp(waiting,depName)||hasProp(defining,depName)){args[i]=callDep(depName)}else if(map.p){map.p.load(map.n,makeRequire(relName,true),makeLoad(depName),{});args[i]=defined[depName]}else{throw new Error(name+" missing "+depName)}}ret=callback?callback.apply(defined[name],args):undefined;if(name){if(cjsModule&&cjsModule.exports!==undef&&cjsModule.exports!==defined[name]){defined[name]=cjsModule.exports}else if(ret!==undef||!usingExports){defined[name]=ret}}}else if(name){defined[name]=callback}};requirejs=require=req=function(deps,callback,relName,forceSync,alt){if(typeof deps==="string"){if(handlers[deps]){return handlers[deps](callback)}return callDep(makeMap(deps,makeRelParts(callback)).f)}else if(!deps.splice){config=deps;if(config.deps){req(config.deps,config.callback)}if(!callback){return}if(callback.splice){deps=callback;callback=relName;relName=null}else{deps=undef}}callback=callback||function(){};if(typeof relName==="function"){relName=forceSync;forceSync=alt}if(forceSync){main(undef,deps,callback,relName)}else{setTimeout(function(){main(undef,deps,callback,relName)},4)}return req};req.config=function(cfg){return req(cfg)};requirejs._defined=defined;define=function(name,deps,callback){if(typeof name!=="string"){throw new Error("See almond README: incorrect module build, no module name")}if(!deps.splice){callback=deps;deps=[]}if(!hasProp(defined,name)&&!hasProp(waiting,name)){waiting[name]=[name,deps,callback]}};define.amd={jQuery:true}})();S2.requirejs=requirejs;S2.require=require;S2.define=define}})();S2.define("almond",function(){});S2.define("jquery",[],function(){var _$=jQuery||$;if(_$==null&&console&&console.error){console.error("Select2: An instance of jQuery or a jQuery-compatible library was not "+"found. Make sure that you are including jQuery before Select2 on your "+"web page.")}return _$});S2.define("select2/utils",["jquery"],function($){var Utils={};Utils.Extend=function(ChildClass,SuperClass){var __hasProp={}.hasOwnProperty;function BaseConstructor(){this.constructor=ChildClass}for(var key in SuperClass){if(__hasProp.call(SuperClass,key)){ChildClass[key]=SuperClass[key]}}BaseConstructor.prototype=SuperClass.prototype;ChildClass.prototype=new BaseConstructor;ChildClass.__super__=SuperClass.prototype;return ChildClass};function getMethods(theClass){var proto=theClass.prototype;var methods=[];for(var methodName in proto){var m=proto[methodName];if(typeof m!=="function"){continue}if(methodName==="constructor"){continue}methods.push(methodName)}return methods}Utils.Decorate=function(SuperClass,DecoratorClass){var decoratedMethods=getMethods(DecoratorClass);var superMethods=getMethods(SuperClass);function DecoratedClass(){var unshift=Array.prototype.unshift;var argCount=DecoratorClass.prototype.constructor.length;var calledConstructor=SuperClass.prototype.constructor;if(argCount>0){unshift.call(arguments,SuperClass.prototype.constructor);calledConstructor=DecoratorClass.prototype.constructor}calledConstructor.apply(this,arguments)}DecoratorClass.displayName=SuperClass.displayName;function ctr(){this.constructor=DecoratedClass}DecoratedClass.prototype=new ctr;for(var m=0;m<superMethods.length;m++){var superMethod=superMethods[m];DecoratedClass.prototype[superMethod]=SuperClass.prototype[superMethod]}var calledMethod=function(methodName){var originalMethod=function(){};if(methodName in DecoratedClass.prototype){originalMethod=DecoratedClass.prototype[methodName]}var decoratedMethod=DecoratorClass.prototype[methodName];return function(){var unshift=Array.prototype.unshift;unshift.call(arguments,originalMethod);return decoratedMethod.apply(this,arguments)}};for(var d=0;d<decoratedMethods.length;d++){var decoratedMethod=decoratedMethods[d];DecoratedClass.prototype[decoratedMethod]=calledMethod(decoratedMethod)}return DecoratedClass};var Observable=function(){this.listeners={}};Observable.prototype.on=function(event,callback){this.listeners=this.listeners||{};if(event in this.listeners){this.listeners[event].push(callback)}else{this.listeners[event]=[callback]}};Observable.prototype.trigger=function(event){var slice=Array.prototype.slice;var params=slice.call(arguments,1);this.listeners=this.listeners||{};if(params==null){params=[]}if(params.length===0){params.push({})}params[0]._type=event;if(event in this.listeners){this.invoke(this.listeners[event],slice.call(arguments,1))}if("*"in this.listeners){this.invoke(this.listeners["*"],arguments)}};Observable.prototype.invoke=function(listeners,params){for(var i=0,len=listeners.length;i<len;i++){listeners[i].apply(this,params)}};Utils.Observable=Observable;Utils.generateChars=function(length){var chars="";for(var i=0;i<length;i++){var randomChar=Math.floor(Math.random()*36);chars+=randomChar.toString(36)}return chars};Utils.bind=function(func,context){return function(){func.apply(context,arguments)}};Utils._convertData=function(data){for(var originalKey in data){var keys=originalKey.split("-");var dataLevel=data;if(keys.length===1){continue}for(var k=0;k<keys.length;k++){var key=keys[k];key=key.substring(0,1).toLowerCase()+key.substring(1);if(!(key in dataLevel)){dataLevel[key]={}}if(k==keys.length-1){dataLevel[key]=data[originalKey]}dataLevel=dataLevel[key]}delete data[originalKey]}return data};Utils.hasScroll=function(index,el){var $el=$(el);var overflowX=el.style.overflowX;var overflowY=el.style.overflowY;if(overflowX===overflowY&&(overflowY==="hidden"||overflowY==="visible")){return false}if(overflowX==="scroll"||overflowY==="scroll"){return true}return $el.innerHeight()<el.scrollHeight||$el.innerWidth()<el.scrollWidth};Utils.escapeMarkup=function(markup){var replaceMap={"\\":"&#92;","&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;","/":"&#47;"};if(typeof markup!=="string"){return markup}return String(markup).replace(/[&<>"'\/\\]/g,function(match){return replaceMap[match]})};Utils.appendMany=function($element,$nodes){if($.fn.jquery.substr(0,3)==="1.7"){var $jqNodes=$();$.map($nodes,function(node){$jqNodes=$jqNodes.add(node)});$nodes=$jqNodes}$element.append($nodes)};Utils.__cache={};var id=0;Utils.GetUniqueElementId=function(element){var select2Id=element.getAttribute("data-select2-id");if(select2Id==null){if(element.id){select2Id=element.id;element.setAttribute("data-select2-id",select2Id)}else{element.setAttribute("data-select2-id",++id);select2Id=id.toString()}}return select2Id};Utils.StoreData=function(element,name,value){var id=Utils.GetUniqueElementId(element);if(!Utils.__cache[id]){Utils.__cache[id]={}}Utils.__cache[id][name]=value};Utils.GetData=function(element,name){var id=Utils.GetUniqueElementId(element);if(name){if(Utils.__cache[id]){return Utils.__cache[id][name]!=null?Utils.__cache[id][name]:$(element).data(name)}return $(element).data(name)}else{return Utils.__cache[id]}};Utils.RemoveData=function(element){var id=Utils.GetUniqueElementId(element);if(Utils.__cache[id]!=null){delete Utils.__cache[id]}};return Utils});S2.define("select2/results",["jquery","./utils"],function($,Utils){function Results($element,options,dataAdapter){this.$element=$element;this.data=dataAdapter;this.options=options;Results.__super__.constructor.call(this)}Utils.Extend(Results,Utils.Observable);Results.prototype.render=function(){var $results=$('<ul class="select2-results__options" role="tree"></ul>');if(this.options.get("multiple")){$results.attr("aria-multiselectable","true")}this.$results=$results;return $results};Results.prototype.clear=function(){this.$results.empty()};Results.prototype.displayMessage=function(params){var escapeMarkup=this.options.get("escapeMarkup");this.clear();this.hideLoading();var $message=$('<li role="treeitem" aria-live="assertive"'+' class="select2-results__option"></li>');var message=this.options.get("translations").get(params.message);$message.append(escapeMarkup(message(params.args)));$message[0].className+=" select2-results__message";this.$results.append($message)};Results.prototype.hideMessages=function(){this.$results.find(".select2-results__message").remove()};Results.prototype.append=function(data){this.hideLoading();var $options=[];if(data.results==null||data.results.length===0){if(this.$results.children().length===0){this.trigger("results:message",{message:"noResults"})}return}data.results=this.sort(data.results);for(var d=0;d<data.results.length;d++){var item=data.results[d];var $option=this.option(item);$options.push($option)}this.$results.append($options)};Results.prototype.position=function($results,$dropdown){var $resultsContainer=$dropdown.find(".select2-results");$resultsContainer.append($results)};Results.prototype.sort=function(data){var sorter=this.options.get("sorter");return sorter(data)};Results.prototype.highlightFirstItem=function(){var $options=this.$results.find(".select2-results__option[aria-selected]");var $selected=$options.filter("[aria-selected=true]");if($selected.length>0){$selected.first().trigger("mouseenter")}else{$options.first().trigger("mouseenter")}this.ensureHighlightVisible()};Results.prototype.setClasses=function(){var self=this;this.data.current(function(selected){var selectedIds=$.map(selected,function(s){return s.id.toString()});var $options=self.$results.find(".select2-results__option[aria-selected]");$options.each(function(){var $option=$(this);var item=Utils.GetData(this,"data");var id=""+item.id;if(item.element!=null&&item.element.selected||item.element==null&&$.inArray(id,selectedIds)>-1){$option.attr("aria-selected","true")}else{$option.attr("aria-selected","false")}})})};Results.prototype.showLoading=function(params){this.hideLoading();var loadingMore=this.options.get("translations").get("searching");var loading={disabled:true,loading:true,text:loadingMore(params)};var $loading=this.option(loading);$loading.className+=" loading-results";this.$results.prepend($loading)};Results.prototype.hideLoading=function(){this.$results.find(".loading-results").remove()};Results.prototype.option=function(data){var option=document.createElement("li");option.className="select2-results__option";var attrs={role:"treeitem","aria-selected":"false"};if(data.disabled){delete attrs["aria-selected"];attrs["aria-disabled"]="true"}if(data.id==null){delete attrs["aria-selected"]}if(data._resultId!=null){option.id=data._resultId}if(data.title){option.title=data.title}if(data.children){attrs.role="group";attrs["aria-label"]=data.text;delete attrs["aria-selected"]}for(var attr in attrs){var val=attrs[attr];option.setAttribute(attr,val)}if(data.children){var $option=$(option);var label=document.createElement("strong");label.className="select2-results__group";var $label=$(label);this.template(data,label);var $children=[];for(var c=0;c<data.children.length;c++){var child=data.children[c];var $child=this.option(child);$children.push($child)}var $childrenContainer=$("<ul></ul>",{class:"select2-results__options select2-results__options--nested"});$childrenContainer.append($children);$option.append(label);$option.append($childrenContainer)}else{this.template(data,option)}Utils.StoreData(option,"data",data);return option};Results.prototype.bind=function(container,$container){var self=this;var id=container.id+"-results";this.$results.attr("id",id);container.on("results:all",function(params){self.clear();self.append(params.data);if(container.isOpen()){self.setClasses();self.highlightFirstItem()}});container.on("results:append",function(params){self.append(params.data);if(container.isOpen()){self.setClasses()}});container.on("query",function(params){self.hideMessages();self.showLoading(params)});container.on("select",function(){if(!container.isOpen()){return}self.setClasses();self.highlightFirstItem()});container.on("unselect",function(){if(!container.isOpen()){return}self.setClasses();self.highlightFirstItem()});container.on("open",function(){self.$results.attr("aria-expanded","true");self.$results.attr("aria-hidden","false");self.setClasses();self.ensureHighlightVisible()});container.on("close",function(){self.$results.attr("aria-expanded","false");self.$results.attr("aria-hidden","true");self.$results.removeAttr("aria-activedescendant")});container.on("results:toggle",function(){var $highlighted=self.getHighlightedResults();if($highlighted.length===0){return}$highlighted.trigger("mouseup")});container.on("results:select",function(){var $highlighted=self.getHighlightedResults();if($highlighted.length===0){return}var data=Utils.GetData($highlighted[0],"data");if($highlighted.attr("aria-selected")=="true"){self.trigger("close",{})}else{self.trigger("select",{data:data})}});container.on("results:previous",function(){var $highlighted=self.getHighlightedResults();var $options=self.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);if(currentIndex<=0){return}var nextIndex=currentIndex-1;if($highlighted.length===0){nextIndex=0}var $next=$options.eq(nextIndex);$next.trigger("mouseenter");var currentOffset=self.$results.offset().top;var nextTop=$next.offset().top;var nextOffset=self.$results.scrollTop()+(nextTop-currentOffset);if(nextIndex===0){self.$results.scrollTop(0)}else if(nextTop-currentOffset<0){self.$results.scrollTop(nextOffset)}});container.on("results:next",function(){var $highlighted=self.getHighlightedResults();var $options=self.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);var nextIndex=currentIndex+1;if(nextIndex>=$options.length){return}var $next=$options.eq(nextIndex);$next.trigger("mouseenter");var currentOffset=self.$results.offset().top+self.$results.outerHeight(false);var nextBottom=$next.offset().top+$next.outerHeight(false);var nextOffset=self.$results.scrollTop()+nextBottom-currentOffset;if(nextIndex===0){self.$results.scrollTop(0)}else if(nextBottom>currentOffset){self.$results.scrollTop(nextOffset)}});container.on("results:focus",function(params){params.element.addClass("select2-results__option--highlighted")});container.on("results:message",function(params){self.displayMessage(params)});if($.fn.mousewheel){this.$results.on("mousewheel",function(e){var top=self.$results.scrollTop();var bottom=self.$results.get(0).scrollHeight-top+e.deltaY;var isAtTop=e.deltaY>0&&top-e.deltaY<=0;var isAtBottom=e.deltaY<0&&bottom<=self.$results.height();if(isAtTop){self.$results.scrollTop(0);e.preventDefault();e.stopPropagation()}else if(isAtBottom){self.$results.scrollTop(self.$results.get(0).scrollHeight-self.$results.height());e.preventDefault();e.stopPropagation()}})}this.$results.on("mouseup",".select2-results__option[aria-selected]",function(evt){var $this=$(this);var data=Utils.GetData(this,"data");if($this.attr("aria-selected")==="true"){if(self.options.get("multiple")){self.trigger("unselect",{originalEvent:evt,data:data})}else{self.trigger("close",{})}return}self.trigger("select",{originalEvent:evt,data:data})});this.$results.on("mouseenter",".select2-results__option[aria-selected]",function(evt){var data=Utils.GetData(this,"data");self.getHighlightedResults().removeClass("select2-results__option--highlighted");self.trigger("results:focus",{data:data,element:$(this)})})};Results.prototype.getHighlightedResults=function(){var $highlighted=this.$results.find(".select2-results__option--highlighted");return $highlighted};Results.prototype.destroy=function(){this.$results.remove()};Results.prototype.ensureHighlightVisible=function(){var $highlighted=this.getHighlightedResults();if($highlighted.length===0){return}var $options=this.$results.find("[aria-selected]");var currentIndex=$options.index($highlighted);var currentOffset=this.$results.offset().top;var nextTop=$highlighted.offset().top;var nextOffset=this.$results.scrollTop()+(nextTop-currentOffset);var offsetDelta=nextTop-currentOffset;nextOffset-=$highlighted.outerHeight(false)*2;if(currentIndex<=2){this.$results.scrollTop(0)}else if(offsetDelta>this.$results.outerHeight()||offsetDelta<0){this.$results.scrollTop(nextOffset)}};Results.prototype.template=function(result,container){var template=this.options.get("templateResult");var escapeMarkup=this.options.get("escapeMarkup");var content=template(result,container);if(content==null){container.style.display="none"}else if(typeof content==="string"){container.innerHTML=escapeMarkup(content)}else{$(container).append(content)}};return Results});S2.define("select2/keys",[],function(){var KEYS={BACKSPACE:8,TAB:9,ENTER:13,SHIFT:16,CTRL:17,ALT:18,ESC:27,SPACE:32,PAGE_UP:33,PAGE_DOWN:34,END:35,HOME:36,LEFT:37,UP:38,RIGHT:39,DOWN:40,DELETE:46};return KEYS});S2.define("select2/selection/base",["jquery","../utils","../keys"],function($,Utils,KEYS){function BaseSelection($element,options){this.$element=$element;this.options=options;BaseSelection.__super__.constructor.call(this)}Utils.Extend(BaseSelection,Utils.Observable);BaseSelection.prototype.render=function(){var $selection=$('<span class="select2-selection" role="combobox" '+' aria-haspopup="true" aria-expanded="false">'+"</span>");this._tabindex=0;if(Utils.GetData(this.$element[0],"old-tabindex")!=null){this._tabindex=Utils.GetData(this.$element[0],"old-tabindex")}else if(this.$element.attr("tabindex")!=null){this._tabindex=this.$element.attr("tabindex")}$selection.attr("title",this.$element.attr("title"));$selection.attr("tabindex",this._tabindex);this.$selection=$selection;return $selection};BaseSelection.prototype.bind=function(container,$container){var self=this;var id=container.id+"-container";var resultsId=container.id+"-results";this.container=container;this.$selection.on("focus",function(evt){self.trigger("focus",evt)});this.$selection.on("blur",function(evt){self._handleBlur(evt)});this.$selection.on("keydown",function(evt){self.trigger("keypress",evt);if(evt.which===KEYS.SPACE){evt.preventDefault()}});container.on("results:focus",function(params){self.$selection.attr("aria-activedescendant",params.data._resultId)});container.on("selection:update",function(params){self.update(params.data)});container.on("open",function(){self.$selection.attr("aria-expanded","true");self.$selection.attr("aria-owns",resultsId);self._attachCloseHandler(container)});container.on("close",function(){self.$selection.attr("aria-expanded","false");self.$selection.removeAttr("aria-activedescendant");self.$selection.removeAttr("aria-owns");self.$selection.focus();window.setTimeout(function(){self.$selection.focus()},0);self._detachCloseHandler(container)});container.on("enable",function(){self.$selection.attr("tabindex",self._tabindex)});container.on("disable",function(){self.$selection.attr("tabindex","-1")})};BaseSelection.prototype._handleBlur=function(evt){var self=this;window.setTimeout(function(){if(document.activeElement==self.$selection[0]||$.contains(self.$selection[0],document.activeElement)){return}self.trigger("blur",evt)},1)};BaseSelection.prototype._attachCloseHandler=function(container){var self=this;$(document.body).on("mousedown.select2."+container.id,function(e){var $target=$(e.target);var $select=$target.closest(".select2");var $all=$(".select2.select2-container--open");$all.each(function(){var $this=$(this);if(this==$select[0]){return}var $element=Utils.GetData(this,"element");$element.select2("close")})})};BaseSelection.prototype._detachCloseHandler=function(container){$(document.body).off("mousedown.select2."+container.id)};BaseSelection.prototype.position=function($selection,$container){var $selectionContainer=$container.find(".selection");$selectionContainer.append($selection)};BaseSelection.prototype.destroy=function(){this._detachCloseHandler(this.container)};BaseSelection.prototype.update=function(data){throw new Error("The `update` method must be defined in child classes.")};return BaseSelection});S2.define("select2/selection/single",["jquery","./base","../utils","../keys"],function($,BaseSelection,Utils,KEYS){function SingleSelection(){SingleSelection.__super__.constructor.apply(this,arguments)}Utils.Extend(SingleSelection,BaseSelection);SingleSelection.prototype.render=function(){var $selection=SingleSelection.__super__.render.call(this);$selection.addClass("select2-selection--single");$selection.html('<span class="select2-selection__rendered"></span>'+'<span class="select2-selection__arrow" role="presentation">'+'<b role="presentation"></b>'+"</span>");return $selection};SingleSelection.prototype.bind=function(container,$container){var self=this;SingleSelection.__super__.bind.apply(this,arguments);var id=container.id+"-container";this.$selection.find(".select2-selection__rendered").attr("id",id).attr("role","textbox").attr("aria-readonly","true");this.$selection.attr("aria-labelledby",id);this.$selection.on("mousedown",function(evt){if(evt.which!==1){return}self.trigger("toggle",{originalEvent:evt})});this.$selection.on("focus",function(evt){});this.$selection.on("blur",function(evt){});container.on("focus",function(evt){if(!container.isOpen()){self.$selection.focus()}})};SingleSelection.prototype.clear=function(){var $rendered=this.$selection.find(".select2-selection__rendered");$rendered.empty();$rendered.removeAttr("title")};SingleSelection.prototype.display=function(data,container){var template=this.options.get("templateSelection");var escapeMarkup=this.options.get("escapeMarkup");return escapeMarkup(template(data,container))};SingleSelection.prototype.selectionContainer=function(){return $("<span></span>")};SingleSelection.prototype.update=function(data){if(data.length===0){this.clear();return}var selection=data[0];var $rendered=this.$selection.find(".select2-selection__rendered");var formatted=this.display(selection,$rendered);$rendered.empty().append(formatted);$rendered.attr("title",selection.title||selection.text)};return SingleSelection});S2.define("select2/selection/multiple",["jquery","./base","../utils"],function($,BaseSelection,Utils){function MultipleSelection($element,options){MultipleSelection.__super__.constructor.apply(this,arguments)}Utils.Extend(MultipleSelection,BaseSelection);MultipleSelection.prototype.render=function(){var $selection=MultipleSelection.__super__.render.call(this);$selection.addClass("select2-selection--multiple");$selection.html('<ul class="select2-selection__rendered"></ul>');return $selection};MultipleSelection.prototype.bind=function(container,$container){var self=this;MultipleSelection.__super__.bind.apply(this,arguments);this.$selection.on("click",function(evt){self.trigger("toggle",{originalEvent:evt})});this.$selection.on("click",".select2-selection__choice__remove",function(evt){if(self.options.get("disabled")){return}var $remove=$(this);var $selection=$remove.parent();var data=Utils.GetData($selection[0],"data");self.trigger("unselect",{originalEvent:evt,data:data})})};MultipleSelection.prototype.clear=function(){var $rendered=this.$selection.find(".select2-selection__rendered");$rendered.empty();$rendered.removeAttr("title")};MultipleSelection.prototype.display=function(data,container){var template=this.options.get("templateSelection");var escapeMarkup=this.options.get("escapeMarkup");return escapeMarkup(template(data,container))};MultipleSelection.prototype.selectionContainer=function(){var $container=$('<li class="select2-selection__choice">'+'<span class="select2-selection__choice__remove" role="presentation">'+"&times;"+"</span>"+"</li>");return $container};MultipleSelection.prototype.update=function(data){this.clear();if(data.length===0){return}var $selections=[];for(var d=0;d<data.length;d++){var selection=data[d];var $selection=this.selectionContainer();var formatted=this.display(selection,$selection);$selection.append(formatted);$selection.attr("title",selection.title||selection.text);Utils.StoreData($selection[0],"data",selection);$selections.push($selection)}var $rendered=this.$selection.find(".select2-selection__rendered");Utils.appendMany($rendered,$selections)};return MultipleSelection});S2.define("select2/selection/placeholder",["../utils"],function(Utils){function Placeholder(decorated,$element,options){this.placeholder=this.normalizePlaceholder(options.get("placeholder"));decorated.call(this,$element,options)}Placeholder.prototype.normalizePlaceholder=function(_,placeholder){if(typeof placeholder==="string"){placeholder={id:"",text:placeholder}}return placeholder};Placeholder.prototype.createPlaceholder=function(decorated,placeholder){var $placeholder=this.selectionContainer();$placeholder.html(this.display(placeholder));$placeholder.addClass("select2-selection__placeholder").removeClass("select2-selection__choice");return $placeholder};Placeholder.prototype.update=function(decorated,data){var singlePlaceholder=data.length==1&&data[0].id!=this.placeholder.id;var multipleSelections=data.length>1;if(multipleSelections||singlePlaceholder){return decorated.call(this,data)}this.clear();var $placeholder=this.createPlaceholder(this.placeholder);this.$selection.find(".select2-selection__rendered").append($placeholder)};return Placeholder});S2.define("select2/selection/allowClear",["jquery","../keys","../utils"],function($,KEYS,Utils){function AllowClear(){}AllowClear.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);if(this.placeholder==null){if(this.options.get("debug")&&window.console&&console.error){console.error("Select2: The `allowClear` option should be used in combination "+"with the `placeholder` option.")}}this.$selection.on("mousedown",".select2-selection__clear",function(evt){self._handleClear(evt)});container.on("keypress",function(evt){self._handleKeyboardClear(evt,container)})};AllowClear.prototype._handleClear=function(_,evt){if(this.options.get("disabled")){return}var $clear=this.$selection.find(".select2-selection__clear");if($clear.length===0){return}evt.stopPropagation();var data=Utils.GetData($clear[0],"data");var previousVal=this.$element.val();this.$element.val(this.placeholder.id);var unselectData={data:data};this.trigger("clear",unselectData);if(unselectData.prevented){this.$element.val(previousVal);return}for(var d=0;d<data.length;d++){unselectData={data:data[d]};this.trigger("unselect",unselectData);if(unselectData.prevented){this.$element.val(previousVal);return}}this.$element.trigger("change");this.trigger("toggle",{})};AllowClear.prototype._handleKeyboardClear=function(_,evt,container){if(container.isOpen()){return}if(evt.which==KEYS.DELETE||evt.which==KEYS.BACKSPACE){this._handleClear(evt)}};AllowClear.prototype.update=function(decorated,data){decorated.call(this,data);if(this.$selection.find(".select2-selection__placeholder").length>0||data.length===0){return}var $remove=$('<span class="select2-selection__clear">'+"&times;"+"</span>");Utils.StoreData($remove[0],"data",data);this.$selection.find(".select2-selection__rendered").prepend($remove)};return AllowClear});S2.define("select2/selection/search",["jquery","../utils","../keys"],function($,Utils,KEYS){function Search(decorated,$element,options){decorated.call(this,$element,options)}Search.prototype.render=function(decorated){var $search=$('<li class="select2-search select2-search--inline">'+'<input class="select2-search__field" type="search" tabindex="-1"'+' autocomplete="off" autocorrect="off" autocapitalize="none"'+' spellcheck="false" role="textbox" aria-autocomplete="list" />'+"</li>");this.$searchContainer=$search;this.$search=$search.find("input");var $rendered=decorated.call(this);this._transferTabIndex();return $rendered};Search.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("open",function(){self.$search.trigger("focus")});container.on("close",function(){self.$search.val("");self.$search.removeAttr("aria-activedescendant");self.$search.trigger("focus")});container.on("enable",function(){self.$search.prop("disabled",false);self._transferTabIndex()});container.on("disable",function(){self.$search.prop("disabled",true)});container.on("focus",function(evt){self.$search.trigger("focus")});container.on("results:focus",function(params){self.$search.attr("aria-activedescendant",params.id)});this.$selection.on("focusin",".select2-search--inline",function(evt){self.trigger("focus",evt)});this.$selection.on("focusout",".select2-search--inline",function(evt){self._handleBlur(evt)});this.$selection.on("keydown",".select2-search--inline",function(evt){evt.stopPropagation();self.trigger("keypress",evt);self._keyUpPrevented=evt.isDefaultPrevented();var key=evt.which;if(key===KEYS.BACKSPACE&&self.$search.val()===""){var $previousChoice=self.$searchContainer.prev(".select2-selection__choice");if($previousChoice.length>0){var item=Utils.GetData($previousChoice[0],"data");self.searchRemoveChoice(item);evt.preventDefault()}}});var msie=document.documentMode;var disableInputEvents=msie&&msie<=11;this.$selection.on("input.searchcheck",".select2-search--inline",function(evt){if(disableInputEvents){self.$selection.off("input.search input.searchcheck");return}self.$selection.off("keyup.search")});this.$selection.on("keyup.search input.search",".select2-search--inline",function(evt){if(disableInputEvents&&evt.type==="input"){self.$selection.off("input.search input.searchcheck");return}var key=evt.which;if(key==KEYS.SHIFT||key==KEYS.CTRL||key==KEYS.ALT){return}if(key==KEYS.TAB){return}self.handleSearch(evt)})};Search.prototype._transferTabIndex=function(decorated){this.$search.attr("tabindex",this.$selection.attr("tabindex"));this.$selection.attr("tabindex","-1")};Search.prototype.createPlaceholder=function(decorated,placeholder){this.$search.attr("placeholder",placeholder.text)};Search.prototype.update=function(decorated,data){var searchHadFocus=this.$search[0]==document.activeElement;this.$search.attr("placeholder","");decorated.call(this,data);this.$selection.find(".select2-selection__rendered").append(this.$searchContainer);this.resizeSearch();if(searchHadFocus){var isTagInput=this.$element.find("[data-select2-tag]").length;if(isTagInput){this.$element.focus()}else{this.$search.focus()}}};Search.prototype.handleSearch=function(){this.resizeSearch();if(!this._keyUpPrevented){var input=this.$search.val();this.trigger("query",{term:input})}this._keyUpPrevented=false};Search.prototype.searchRemoveChoice=function(decorated,item){this.trigger("unselect",{data:item});this.$search.val(item.text);this.handleSearch()};Search.prototype.resizeSearch=function(){this.$search.css("width","25px");var width="";if(this.$search.attr("placeholder")!==""){width=this.$selection.find(".select2-selection__rendered").innerWidth()}else{var minimumWidth=this.$search.val().length+1;width=minimumWidth*.75+"em"}this.$search.css("width",width)};return Search});S2.define("select2/selection/eventRelay",["jquery"],function($){function EventRelay(){}EventRelay.prototype.bind=function(decorated,container,$container){var self=this;var relayEvents=["open","opening","close","closing","select","selecting","unselect","unselecting","clear","clearing"];var preventableEvents=["opening","closing","selecting","unselecting","clearing"];decorated.call(this,container,$container);container.on("*",function(name,params){if($.inArray(name,relayEvents)===-1){return}params=params||{};var evt=$.Event("select2:"+name,{params:params});self.$element.trigger(evt);if($.inArray(name,preventableEvents)===-1){return}params.prevented=evt.isDefaultPrevented()})};return EventRelay});S2.define("select2/translation",["jquery","require"],function($,require){function Translation(dict){this.dict=dict||{}}Translation.prototype.all=function(){return this.dict};Translation.prototype.get=function(key){return this.dict[key]};Translation.prototype.extend=function(translation){this.dict=$.extend({},translation.all(),this.dict)};Translation._cache={};Translation.loadPath=function(path){if(!(path in Translation._cache)){var translations=require(path);Translation._cache[path]=translations}return new Translation(Translation._cache[path])};return Translation});S2.define("select2/diacritics",[],function(){var diacritics={"Ⓐ":"A","A":"A","À":"A","Á":"A","Â":"A","Ầ":"A","Ấ":"A","Ẫ":"A","Ẩ":"A","Ã":"A","Ā":"A","Ă":"A","Ằ":"A","Ắ":"A","Ẵ":"A","Ẳ":"A","Ȧ":"A","Ǡ":"A","Ä":"A","Ǟ":"A","Ả":"A","Å":"A","Ǻ":"A","Ǎ":"A","Ȁ":"A","Ȃ":"A","Ạ":"A","Ậ":"A","Ặ":"A","Ḁ":"A","Ą":"A","Ⱥ":"A","Ɐ":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ⓑ":"B","B":"B","Ḃ":"B","Ḅ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ɓ":"B","Ⓒ":"C","C":"C","Ć":"C","Ĉ":"C","Ċ":"C","Č":"C","Ç":"C","Ḉ":"C","Ƈ":"C","Ȼ":"C","Ꜿ":"C","Ⓓ":"D","D":"D","Ḋ":"D","Ď":"D","Ḍ":"D","Ḑ":"D","Ḓ":"D","Ḏ":"D","Đ":"D","Ƌ":"D","Ɗ":"D","Ɖ":"D","Ꝺ":"D","DZ":"DZ","DŽ":"DZ","Dz":"Dz","Dž":"Dz","Ⓔ":"E","E":"E","È":"E","É":"E","Ê":"E","Ề":"E","Ế":"E","Ễ":"E","Ể":"E","Ẽ":"E","Ē":"E","Ḕ":"E","Ḗ":"E","Ĕ":"E","Ė":"E","Ë":"E","Ẻ":"E","Ě":"E","Ȅ":"E","Ȇ":"E","Ẹ":"E","Ệ":"E","Ȩ":"E","Ḝ":"E","Ę":"E","Ḙ":"E","Ḛ":"E","Ɛ":"E","Ǝ":"E","Ⓕ":"F","F":"F","Ḟ":"F","Ƒ":"F","Ꝼ":"F","Ⓖ":"G","G":"G","Ǵ":"G","Ĝ":"G","Ḡ":"G","Ğ":"G","Ġ":"G","Ǧ":"G","Ģ":"G","Ǥ":"G","Ɠ":"G","Ꞡ":"G","Ᵹ":"G","Ꝿ":"G","Ⓗ":"H","H":"H","Ĥ":"H","Ḣ":"H","Ḧ":"H","Ȟ":"H","Ḥ":"H","Ḩ":"H","Ḫ":"H","Ħ":"H","Ⱨ":"H","Ⱶ":"H","Ɥ":"H","Ⓘ":"I","I":"I","Ì":"I","Í":"I","Î":"I","Ĩ":"I","Ī":"I","Ĭ":"I","İ":"I","Ï":"I","Ḯ":"I","Ỉ":"I","Ǐ":"I","Ȉ":"I","Ȋ":"I","Ị":"I","Į":"I","Ḭ":"I","Ɨ":"I","Ⓙ":"J","J":"J","Ĵ":"J","Ɉ":"J","Ⓚ":"K","K":"K","Ḱ":"K","Ǩ":"K","Ḳ":"K","Ķ":"K","Ḵ":"K","Ƙ":"K","Ⱪ":"K","Ꝁ":"K","Ꝃ":"K","Ꝅ":"K","Ꞣ":"K","Ⓛ":"L","L":"L","Ŀ":"L","Ĺ":"L","Ľ":"L","Ḷ":"L","Ḹ":"L","Ļ":"L","Ḽ":"L","Ḻ":"L","Ł":"L","Ƚ":"L","Ɫ":"L","Ⱡ":"L","Ꝉ":"L","Ꝇ":"L","Ꞁ":"L","LJ":"LJ","Lj":"Lj","Ⓜ":"M","M":"M","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ɯ":"M","Ⓝ":"N","N":"N","Ǹ":"N","Ń":"N","Ñ":"N","Ṅ":"N","Ň":"N","Ṇ":"N","Ņ":"N","Ṋ":"N","Ṉ":"N","Ƞ":"N","Ɲ":"N","Ꞑ":"N","Ꞥ":"N","NJ":"NJ","Nj":"Nj","Ⓞ":"O","O":"O","Ò":"O","Ó":"O","Ô":"O","Ồ":"O","Ố":"O","Ỗ":"O","Ổ":"O","Õ":"O","Ṍ":"O","Ȭ":"O","Ṏ":"O","Ō":"O","Ṑ":"O","Ṓ":"O","Ŏ":"O","Ȯ":"O","Ȱ":"O","Ö":"O","Ȫ":"O","Ỏ":"O","Ő":"O","Ǒ":"O","Ȍ":"O","Ȏ":"O","Ơ":"O","Ờ":"O","Ớ":"O","Ỡ":"O","Ở":"O","Ợ":"O","Ọ":"O","Ộ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Ɔ":"O","Ɵ":"O","Ꝋ":"O","Ꝍ":"O","Ƣ":"OI","Ꝏ":"OO","Ȣ":"OU","Ⓟ":"P","P":"P","Ṕ":"P","Ṗ":"P","Ƥ":"P","Ᵽ":"P","Ꝑ":"P","Ꝓ":"P","Ꝕ":"P","Ⓠ":"Q","Q":"Q","Ꝗ":"Q","Ꝙ":"Q","Ɋ":"Q","Ⓡ":"R","R":"R","Ŕ":"R","Ṙ":"R","Ř":"R","Ȑ":"R","Ȓ":"R","Ṛ":"R","Ṝ":"R","Ŗ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꝛ":"R","Ꞧ":"R","Ꞃ":"R","Ⓢ":"S","S":"S","ẞ":"S","Ś":"S","Ṥ":"S","Ŝ":"S","Ṡ":"S","Š":"S","Ṧ":"S","Ṣ":"S","Ṩ":"S","Ș":"S","Ş":"S","Ȿ":"S","Ꞩ":"S","Ꞅ":"S","Ⓣ":"T","T":"T","Ṫ":"T","Ť":"T","Ṭ":"T","Ț":"T","Ţ":"T","Ṱ":"T","Ṯ":"T","Ŧ":"T","Ƭ":"T","Ʈ":"T","Ⱦ":"T","Ꞇ":"T","Ꜩ":"TZ","Ⓤ":"U","U":"U","Ù":"U","Ú":"U","Û":"U","Ũ":"U","Ṹ":"U","Ū":"U","Ṻ":"U","Ŭ":"U","Ü":"U","Ǜ":"U","Ǘ":"U","Ǖ":"U","Ǚ":"U","Ủ":"U","Ů":"U","Ű":"U","Ǔ":"U","Ȕ":"U","Ȗ":"U","Ư":"U","Ừ":"U","Ứ":"U","Ữ":"U","Ử":"U","Ự":"U","Ụ":"U","Ṳ":"U","Ų":"U","Ṷ":"U","Ṵ":"U","Ʉ":"U","Ⓥ":"V","V":"V","Ṽ":"V","Ṿ":"V","Ʋ":"V","Ꝟ":"V","Ʌ":"V","Ꝡ":"VY","Ⓦ":"W","W":"W","Ẁ":"W","Ẃ":"W","Ŵ":"W","Ẇ":"W","Ẅ":"W","Ẉ":"W","Ⱳ":"W","Ⓧ":"X","X":"X","Ẋ":"X","Ẍ":"X","Ⓨ":"Y","Y":"Y","Ỳ":"Y","Ý":"Y","Ŷ":"Y","Ỹ":"Y","Ȳ":"Y","Ẏ":"Y","Ÿ":"Y","Ỷ":"Y","Ỵ":"Y","Ƴ":"Y","Ɏ":"Y","Ỿ":"Y","Ⓩ":"Z","Z":"Z","Ź":"Z","Ẑ":"Z","Ż":"Z","Ž":"Z","Ẓ":"Z","Ẕ":"Z","Ƶ":"Z","Ȥ":"Z","Ɀ":"Z","Ⱬ":"Z","Ꝣ":"Z","ⓐ":"a","a":"a","ẚ":"a","à":"a","á":"a","â":"a","ầ":"a","ấ":"a","ẫ":"a","ẩ":"a","ã":"a","ā":"a","ă":"a","ằ":"a","ắ":"a","ẵ":"a","ẳ":"a","ȧ":"a","ǡ":"a","ä":"a","ǟ":"a","ả":"a","å":"a","ǻ":"a","ǎ":"a","ȁ":"a","ȃ":"a","ạ":"a","ậ":"a","ặ":"a","ḁ":"a","ą":"a","ⱥ":"a","ɐ":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ⓑ":"b","b":"b","ḃ":"b","ḅ":"b","ḇ":"b","ƀ":"b","ƃ":"b","ɓ":"b","ⓒ":"c","c":"c","ć":"c","ĉ":"c","ċ":"c","č":"c","ç":"c","ḉ":"c","ƈ":"c","ȼ":"c","ꜿ":"c","ↄ":"c","ⓓ":"d","d":"d","ḋ":"d","ď":"d","ḍ":"d","ḑ":"d","ḓ":"d","ḏ":"d","đ":"d","ƌ":"d","ɖ":"d","ɗ":"d","ꝺ":"d","dz":"dz","dž":"dz","ⓔ":"e","e":"e","è":"e","é":"e","ê":"e","ề":"e","ế":"e","ễ":"e","ể":"e","ẽ":"e","ē":"e","ḕ":"e","ḗ":"e","ĕ":"e","ė":"e","ë":"e","ẻ":"e","ě":"e","ȅ":"e","ȇ":"e","ẹ":"e","ệ":"e","ȩ":"e","ḝ":"e","ę":"e","ḙ":"e","ḛ":"e","ɇ":"e","ɛ":"e","ǝ":"e","ⓕ":"f","f":"f","ḟ":"f","ƒ":"f","ꝼ":"f","ⓖ":"g","g":"g","ǵ":"g","ĝ":"g","ḡ":"g","ğ":"g","ġ":"g","ǧ":"g","ģ":"g","ǥ":"g","ɠ":"g","ꞡ":"g","ᵹ":"g","ꝿ":"g","ⓗ":"h","h":"h","ĥ":"h","ḣ":"h","ḧ":"h","ȟ":"h","ḥ":"h","ḩ":"h","ḫ":"h","ẖ":"h","ħ":"h","ⱨ":"h","ⱶ":"h","ɥ":"h","ƕ":"hv","ⓘ":"i","i":"i","ì":"i","í":"i","î":"i","ĩ":"i","ī":"i","ĭ":"i","ï":"i","ḯ":"i","ỉ":"i","ǐ":"i","ȉ":"i","ȋ":"i","ị":"i","į":"i","ḭ":"i","ɨ":"i","ı":"i","ⓙ":"j","j":"j","ĵ":"j","ǰ":"j","ɉ":"j","ⓚ":"k","k":"k","ḱ":"k","ǩ":"k","ḳ":"k","ķ":"k","ḵ":"k","ƙ":"k","ⱪ":"k","ꝁ":"k","ꝃ":"k","ꝅ":"k","ꞣ":"k","ⓛ":"l","l":"l","ŀ":"l","ĺ":"l","ľ":"l","ḷ":"l","ḹ":"l","ļ":"l","ḽ":"l","ḻ":"l","ſ":"l","ł":"l","ƚ":"l","ɫ":"l","ⱡ":"l","ꝉ":"l","ꞁ":"l","ꝇ":"l","lj":"lj","ⓜ":"m","m":"m","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ɯ":"m","ⓝ":"n","n":"n","ǹ":"n","ń":"n","ñ":"n","ṅ":"n","ň":"n","ṇ":"n","ņ":"n","ṋ":"n","ṉ":"n","ƞ":"n","ɲ":"n","ʼn":"n","ꞑ":"n","ꞥ":"n","nj":"nj","ⓞ":"o","o":"o","ò":"o","ó":"o","ô":"o","ồ":"o","ố":"o","ỗ":"o","ổ":"o","õ":"o","ṍ":"o","ȭ":"o","ṏ":"o","ō":"o","ṑ":"o","ṓ":"o","ŏ":"o","ȯ":"o","ȱ":"o","ö":"o","ȫ":"o","ỏ":"o","ő":"o","ǒ":"o","ȍ":"o","ȏ":"o","ơ":"o","ờ":"o","ớ":"o","ỡ":"o","ở":"o","ợ":"o","ọ":"o","ộ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","ɔ":"o","ꝋ":"o","ꝍ":"o","ɵ":"o","ƣ":"oi","ȣ":"ou","ꝏ":"oo","ⓟ":"p","p":"p","ṕ":"p","ṗ":"p","ƥ":"p","ᵽ":"p","ꝑ":"p","ꝓ":"p","ꝕ":"p","ⓠ":"q","q":"q","ɋ":"q","ꝗ":"q","ꝙ":"q","ⓡ":"r","r":"r","ŕ":"r","ṙ":"r","ř":"r","ȑ":"r","ȓ":"r","ṛ":"r","ṝ":"r","ŗ":"r","ṟ":"r","ɍ":"r","ɽ":"r","ꝛ":"r","ꞧ":"r","ꞃ":"r","ⓢ":"s","s":"s","ß":"s","ś":"s","ṥ":"s","ŝ":"s","ṡ":"s","š":"s","ṧ":"s","ṣ":"s","ṩ":"s","ș":"s","ş":"s","ȿ":"s","ꞩ":"s","ꞅ":"s","ẛ":"s","ⓣ":"t","t":"t","ṫ":"t","ẗ":"t","ť":"t","ṭ":"t","ț":"t","ţ":"t","ṱ":"t","ṯ":"t","ŧ":"t","ƭ":"t","ʈ":"t","ⱦ":"t","ꞇ":"t","ꜩ":"tz","ⓤ":"u","u":"u","ù":"u","ú":"u","û":"u","ũ":"u","ṹ":"u","ū":"u","ṻ":"u","ŭ":"u","ü":"u","ǜ":"u","ǘ":"u","ǖ":"u","ǚ":"u","ủ":"u","ů":"u","ű":"u","ǔ":"u","ȕ":"u","ȗ":"u","ư":"u","ừ":"u","ứ":"u","ữ":"u","ử":"u","ự":"u","ụ":"u","ṳ":"u","ų":"u","ṷ":"u","ṵ":"u","ʉ":"u","ⓥ":"v","v":"v","ṽ":"v","ṿ":"v","ʋ":"v","ꝟ":"v","ʌ":"v","ꝡ":"vy","ⓦ":"w","w":"w","ẁ":"w","ẃ":"w","ŵ":"w","ẇ":"w","ẅ":"w","ẘ":"w","ẉ":"w","ⱳ":"w","ⓧ":"x","x":"x","ẋ":"x","ẍ":"x","ⓨ":"y","y":"y","ỳ":"y","ý":"y","ŷ":"y","ỹ":"y","ȳ":"y","ẏ":"y","ÿ":"y","ỷ":"y","ẙ":"y","ỵ":"y","ƴ":"y","ɏ":"y","ỿ":"y","ⓩ":"z","z":"z","ź":"z","ẑ":"z","ż":"z","ž":"z","ẓ":"z","ẕ":"z","ƶ":"z","ȥ":"z","ɀ":"z","ⱬ":"z","ꝣ":"z","Ά":"Α","Έ":"Ε","Ή":"Η","Ί":"Ι","Ϊ":"Ι","Ό":"Ο","Ύ":"Υ","Ϋ":"Υ","Ώ":"Ω","ά":"α","έ":"ε","ή":"η","ί":"ι","ϊ":"ι","ΐ":"ι","ό":"ο","ύ":"υ","ϋ":"υ","ΰ":"υ","ω":"ω","ς":"σ"};return diacritics});S2.define("select2/data/base",["../utils"],function(Utils){function BaseAdapter($element,options){BaseAdapter.__super__.constructor.call(this)}Utils.Extend(BaseAdapter,Utils.Observable);BaseAdapter.prototype.current=function(callback){throw new Error("The `current` method must be defined in child classes.")};BaseAdapter.prototype.query=function(params,callback){throw new Error("The `query` method must be defined in child classes.")};BaseAdapter.prototype.bind=function(container,$container){};BaseAdapter.prototype.destroy=function(){};BaseAdapter.prototype.generateResultId=function(container,data){var id=container.id+"-result-";id+=Utils.generateChars(4);if(data.id!=null){id+="-"+data.id.toString()}else{id+="-"+Utils.generateChars(4)}return id};return BaseAdapter});S2.define("select2/data/select",["./base","../utils","jquery"],function(BaseAdapter,Utils,$){function SelectAdapter($element,options){this.$element=$element;this.options=options;SelectAdapter.__super__.constructor.call(this)}Utils.Extend(SelectAdapter,BaseAdapter);SelectAdapter.prototype.current=function(callback){var data=[];var self=this;this.$element.find(":selected").each(function(){var $option=$(this);var option=self.item($option);data.push(option)});callback(data)};SelectAdapter.prototype.select=function(data){var self=this;data.selected=true;if($(data.element).is("option")){data.element.selected=true;this.$element.trigger("change");return}if(this.$element.prop("multiple")){this.current(function(currentData){var val=[];data=[data];data.push.apply(data,currentData);for(var d=0;d<data.length;d++){var id=data[d].id;if($.inArray(id,val)===-1){val.push(id)}}self.$element.val(val);self.$element.trigger("change")})}else{var val=data.id;this.$element.val(val);this.$element.trigger("change")}};SelectAdapter.prototype.unselect=function(data){var self=this;if(!this.$element.prop("multiple")){return}data.selected=false;if($(data.element).is("option")){data.element.selected=false;this.$element.trigger("change");return}this.current(function(currentData){var val=[];for(var d=0;d<currentData.length;d++){var id=currentData[d].id;if(id!==data.id&&$.inArray(id,val)===-1){val.push(id)}}self.$element.val(val);self.$element.trigger("change")})};SelectAdapter.prototype.bind=function(container,$container){var self=this;this.container=container;container.on("select",function(params){self.select(params.data)});container.on("unselect",function(params){self.unselect(params.data)})};SelectAdapter.prototype.destroy=function(){this.$element.find("*").each(function(){Utils.RemoveData(this)})};SelectAdapter.prototype.query=function(params,callback){var data=[];var self=this;var $options=this.$element.children();$options.each(function(){var $option=$(this);if(!$option.is("option")&&!$option.is("optgroup")){return}var option=self.item($option);var matches=self.matches(params,option);if(matches!==null){data.push(matches)}});callback({results:data})};SelectAdapter.prototype.addOptions=function($options){Utils.appendMany(this.$element,$options)};SelectAdapter.prototype.option=function(data){var option;if(data.children){option=document.createElement("optgroup");option.label=data.text}else{option=document.createElement("option");if(option.textContent!==undefined){option.textContent=data.text}else{option.innerText=data.text}}if(data.id!==undefined){option.value=data.id}if(data.disabled){option.disabled=true}if(data.selected){option.selected=true}if(data.title){option.title=data.title}var $option=$(option);var normalizedData=this._normalizeItem(data);normalizedData.element=option;Utils.StoreData(option,"data",normalizedData);return $option};SelectAdapter.prototype.item=function($option){var data={};data=Utils.GetData($option[0],"data");if(data!=null){return data}if($option.is("option")){data={id:$option.val(),text:$option.text(),disabled:$option.prop("disabled"),selected:$option.prop("selected"),title:$option.prop("title")}}else if($option.is("optgroup")){data={text:$option.prop("label"),children:[],title:$option.prop("title")};var $children=$option.children("option");var children=[];for(var c=0;c<$children.length;c++){var $child=$($children[c]);var child=this.item($child);children.push(child)}data.children=children}data=this._normalizeItem(data);data.element=$option[0];Utils.StoreData($option[0],"data",data);return data};SelectAdapter.prototype._normalizeItem=function(item){if(item!==Object(item)){item={id:item,text:item}}item=$.extend({},{text:""},item);var defaults={selected:false,disabled:false};if(item.id!=null){item.id=item.id.toString()}if(item.text!=null){item.text=item.text.toString()}if(item._resultId==null&&item.id&&this.container!=null){item._resultId=this.generateResultId(this.container,item)}return $.extend({},defaults,item)};SelectAdapter.prototype.matches=function(params,data){var matcher=this.options.get("matcher");return matcher(params,data)};return SelectAdapter});S2.define("select2/data/array",["./select","../utils","jquery"],function(SelectAdapter,Utils,$){function ArrayAdapter($element,options){var data=options.get("data")||[];ArrayAdapter.__super__.constructor.call(this,$element,options);this.addOptions(this.convertToOptions(data))}Utils.Extend(ArrayAdapter,SelectAdapter);ArrayAdapter.prototype.select=function(data){var $option=this.$element.find("option").filter(function(i,elm){return elm.value==data.id.toString()});if($option.length===0){$option=this.option(data);this.addOptions($option)}ArrayAdapter.__super__.select.call(this,data)};ArrayAdapter.prototype.convertToOptions=function(data){var self=this;var $existing=this.$element.find("option");var existingIds=$existing.map(function(){return self.item($(this)).id}).get();var $options=[];function onlyItem(item){return function(){return $(this).val()==item.id}}for(var d=0;d<data.length;d++){var item=this._normalizeItem(data[d]);if($.inArray(item.id,existingIds)>=0){var $existingOption=$existing.filter(onlyItem(item));var existingData=this.item($existingOption);var newData=$.extend(true,{},item,existingData);var $newOption=this.option(newData);$existingOption.replaceWith($newOption);continue}var $option=this.option(item);if(item.children){var $children=this.convertToOptions(item.children);Utils.appendMany($option,$children)}$options.push($option)}return $options};return ArrayAdapter});S2.define("select2/data/ajax",["./array","../utils","jquery"],function(ArrayAdapter,Utils,$){function AjaxAdapter($element,options){this.ajaxOptions=this._applyDefaults(options.get("ajax"));if(this.ajaxOptions.processResults!=null){this.processResults=this.ajaxOptions.processResults}AjaxAdapter.__super__.constructor.call(this,$element,options)}Utils.Extend(AjaxAdapter,ArrayAdapter);AjaxAdapter.prototype._applyDefaults=function(options){var defaults={data:function(params){return $.extend({},params,{q:params.term})},transport:function(params,success,failure){var $request=$.ajax(params);$request.then(success);$request.fail(failure);return $request}};return $.extend({},defaults,options,true)};AjaxAdapter.prototype.processResults=function(results){return results};AjaxAdapter.prototype.query=function(params,callback){var matches=[];var self=this;if(this._request!=null){if($.isFunction(this._request.abort)){this._request.abort()}this._request=null}var options=$.extend({type:"GET"},this.ajaxOptions);if(typeof options.url==="function"){options.url=options.url.call(this.$element,params)}if(typeof options.data==="function"){options.data=options.data.call(this.$element,params)}function request(){var $request=options.transport(options,function(data){var results=self.processResults(data,params);if(self.options.get("debug")&&window.console&&console.error){if(!results||!results.results||!$.isArray(results.results)){console.error("Select2: The AJAX results did not return an array in the "+"`results` key of the response.")}}callback(results)},function(){if("status"in $request&&($request.status===0||$request.status==="0")){return}self.trigger("results:message",{message:"errorLoading"})});self._request=$request}if(this.ajaxOptions.delay&&params.term!=null){if(this._queryTimeout){window.clearTimeout(this._queryTimeout)}this._queryTimeout=window.setTimeout(request,this.ajaxOptions.delay)}else{request()}};return AjaxAdapter});S2.define("select2/data/tags",["jquery"],function($){function Tags(decorated,$element,options){var tags=options.get("tags");var createTag=options.get("createTag");if(createTag!==undefined){this.createTag=createTag}var insertTag=options.get("insertTag");if(insertTag!==undefined){this.insertTag=insertTag}decorated.call(this,$element,options);if($.isArray(tags)){for(var t=0;t<tags.length;t++){var tag=tags[t];var item=this._normalizeItem(tag);var $option=this.option(item);this.$element.append($option)}}}Tags.prototype.query=function(decorated,params,callback){var self=this;this._removeOldTags();if(params.term==null||params.page!=null){decorated.call(this,params,callback);return}function wrapper(obj,child){var data=obj.results;for(var i=0;i<data.length;i++){var option=data[i];var checkChildren=option.children!=null&&!wrapper({results:option.children},true);var optionText=(option.text||"").toUpperCase();var paramsTerm=(params.term||"").toUpperCase();var checkText=optionText===paramsTerm;if(checkText||checkChildren){if(child){return false}obj.data=data;callback(obj);return}}if(child){return true}var tag=self.createTag(params);if(tag!=null){var $option=self.option(tag);$option.attr("data-select2-tag",true);self.addOptions([$option]);self.insertTag(data,tag)}obj.results=data;callback(obj)}decorated.call(this,params,wrapper)};Tags.prototype.createTag=function(decorated,params){var term=$.trim(params.term);if(term===""){return null}return{id:term,text:term}};Tags.prototype.insertTag=function(_,data,tag){data.unshift(tag)};Tags.prototype._removeOldTags=function(_){var tag=this._lastTag;var $options=this.$element.find("option[data-select2-tag]");$options.each(function(){if(this.selected){return}$(this).remove()})};return Tags});S2.define("select2/data/tokenizer",["jquery"],function($){function Tokenizer(decorated,$element,options){var tokenizer=options.get("tokenizer");if(tokenizer!==undefined){this.tokenizer=tokenizer}decorated.call(this,$element,options)}Tokenizer.prototype.bind=function(decorated,container,$container){decorated.call(this,container,$container);this.$search=container.dropdown.$search||container.selection.$search||$container.find(".select2-search__field")};Tokenizer.prototype.query=function(decorated,params,callback){var self=this;function createAndSelect(data){var item=self._normalizeItem(data);var $existingOptions=self.$element.find("option").filter(function(){return $(this).val()===item.id});if(!$existingOptions.length){var $option=self.option(item);$option.attr("data-select2-tag",true);self._removeOldTags();self.addOptions([$option])}select(item)}function select(data){self.trigger("select",{data:data})}params.term=params.term||"";var tokenData=this.tokenizer(params,this.options,createAndSelect);if(tokenData.term!==params.term){if(this.$search.length){this.$search.val(tokenData.term);this.$search.focus()}params.term=tokenData.term}decorated.call(this,params,callback)};Tokenizer.prototype.tokenizer=function(_,params,options,callback){var separators=options.get("tokenSeparators")||[];var term=params.term;var i=0;var createTag=this.createTag||function(params){return{id:params.term,text:params.term}};while(i<term.length){var termChar=term[i];if($.inArray(termChar,separators)===-1){i++;continue}var part=term.substr(0,i);var partParams=$.extend({},params,{term:part});var data=createTag(partParams);if(data==null){i++;continue}callback(data);term=term.substr(i+1)||"";i=0}return{term:term}};return Tokenizer});S2.define("select2/data/minimumInputLength",[],function(){function MinimumInputLength(decorated,$e,options){this.minimumInputLength=options.get("minimumInputLength");decorated.call(this,$e,options)}MinimumInputLength.prototype.query=function(decorated,params,callback){params.term=params.term||"";if(params.term.length<this.minimumInputLength){this.trigger("results:message",{message:"inputTooShort",args:{minimum:this.minimumInputLength,input:params.term,params:params}});return}decorated.call(this,params,callback)};return MinimumInputLength});S2.define("select2/data/maximumInputLength",[],function(){function MaximumInputLength(decorated,$e,options){this.maximumInputLength=options.get("maximumInputLength");decorated.call(this,$e,options)}MaximumInputLength.prototype.query=function(decorated,params,callback){params.term=params.term||"";if(this.maximumInputLength>0&&params.term.length>this.maximumInputLength){this.trigger("results:message",{message:"inputTooLong",args:{maximum:this.maximumInputLength,input:params.term,params:params}});return}decorated.call(this,params,callback)};return MaximumInputLength});S2.define("select2/data/maximumSelectionLength",[],function(){function MaximumSelectionLength(decorated,$e,options){this.maximumSelectionLength=options.get("maximumSelectionLength");decorated.call(this,$e,options)}MaximumSelectionLength.prototype.query=function(decorated,params,callback){var self=this;this.current(function(currentData){var count=currentData!=null?currentData.length:0;if(self.maximumSelectionLength>0&&count>=self.maximumSelectionLength){self.trigger("results:message",{message:"maximumSelected",args:{maximum:self.maximumSelectionLength}});return}decorated.call(self,params,callback)})};return MaximumSelectionLength});S2.define("select2/dropdown",["jquery","./utils"],function($,Utils){function Dropdown($element,options){this.$element=$element;this.options=options;Dropdown.__super__.constructor.call(this)}Utils.Extend(Dropdown,Utils.Observable);Dropdown.prototype.render=function(){var $dropdown=$('<span class="select2-dropdown">'+'<span class="select2-results"></span>'+"</span>");$dropdown.attr("dir",this.options.get("dir"));this.$dropdown=$dropdown;return $dropdown};Dropdown.prototype.bind=function(){};Dropdown.prototype.position=function($dropdown,$container){};Dropdown.prototype.destroy=function(){this.$dropdown.remove()};return Dropdown});S2.define("select2/dropdown/search",["jquery","../utils"],function($,Utils){function Search(){}Search.prototype.render=function(decorated){var $rendered=decorated.call(this);var $search=$('<span class="select2-search select2-search--dropdown">'+'<input class="select2-search__field" type="search" tabindex="-1"'+' autocomplete="off" autocorrect="off" autocapitalize="none"'+' spellcheck="false" role="textbox" />'+"</span>");this.$searchContainer=$search;this.$search=$search.find("input");$rendered.prepend($search);return $rendered};Search.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);this.$search.on("keydown",function(evt){self.trigger("keypress",evt);self._keyUpPrevented=evt.isDefaultPrevented()});this.$search.on("input",function(evt){$(this).off("keyup")});this.$search.on("keyup input",function(evt){self.handleSearch(evt)});container.on("open",function(){self.$search.attr("tabindex",0);self.$search.focus();window.setTimeout(function(){self.$search.focus()},0)});container.on("close",function(){self.$search.attr("tabindex",-1);self.$search.val("");self.$search.blur()});container.on("focus",function(){if(!container.isOpen()){self.$search.focus()}});container.on("results:all",function(params){if(params.query.term==null||params.query.term===""){var showSearch=self.showSearch(params);if(showSearch){self.$searchContainer.removeClass("select2-search--hide")}else{self.$searchContainer.addClass("select2-search--hide")}}})};Search.prototype.handleSearch=function(evt){if(!this._keyUpPrevented){var input=this.$search.val();this.trigger("query",{term:input})}this._keyUpPrevented=false};Search.prototype.showSearch=function(_,params){return true};return Search});S2.define("select2/dropdown/hidePlaceholder",[],function(){function HidePlaceholder(decorated,$element,options,dataAdapter){this.placeholder=this.normalizePlaceholder(options.get("placeholder"));decorated.call(this,$element,options,dataAdapter)}HidePlaceholder.prototype.append=function(decorated,data){data.results=this.removePlaceholder(data.results);decorated.call(this,data)};HidePlaceholder.prototype.normalizePlaceholder=function(_,placeholder){if(typeof placeholder==="string"){placeholder={id:"",text:placeholder}}return placeholder};HidePlaceholder.prototype.removePlaceholder=function(_,data){var modifiedData=data.slice(0);for(var d=data.length-1;d>=0;d--){var item=data[d];if(this.placeholder.id===item.id){modifiedData.splice(d,1)}}return modifiedData};return HidePlaceholder});S2.define("select2/dropdown/infiniteScroll",["jquery"],function($){function InfiniteScroll(decorated,$element,options,dataAdapter){this.lastParams={};decorated.call(this,$element,options,dataAdapter);this.$loadingMore=this.createLoadingMore();this.loading=false}InfiniteScroll.prototype.append=function(decorated,data){this.$loadingMore.remove();this.loading=false;decorated.call(this,data);if(this.showLoadingMore(data)){this.$results.append(this.$loadingMore)}};InfiniteScroll.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("query",function(params){self.lastParams=params;self.loading=true});container.on("query:append",function(params){self.lastParams=params;self.loading=true});this.$results.on("scroll",function(){var isLoadMoreVisible=$.contains(document.documentElement,self.$loadingMore[0]);if(self.loading||!isLoadMoreVisible){return}var currentOffset=self.$results.offset().top+self.$results.outerHeight(false);var loadingMoreOffset=self.$loadingMore.offset().top+self.$loadingMore.outerHeight(false);if(currentOffset+50>=loadingMoreOffset){self.loadMore()}})};InfiniteScroll.prototype.loadMore=function(){this.loading=true;var params=$.extend({},{page:1},this.lastParams);params.page++;this.trigger("query:append",params)};InfiniteScroll.prototype.showLoadingMore=function(_,data){return data.pagination&&data.pagination.more};InfiniteScroll.prototype.createLoadingMore=function(){var $option=$("<li "+'class="select2-results__option select2-results__option--load-more"'+'role="treeitem" aria-disabled="true"></li>');var message=this.options.get("translations").get("loadingMore");$option.html(message(this.lastParams));return $option};return InfiniteScroll});S2.define("select2/dropdown/attachBody",["jquery","../utils"],function($,Utils){function AttachBody(decorated,$element,options){this.$dropdownParent=options.get("dropdownParent")||$(document.body);decorated.call(this,$element,options)}AttachBody.prototype.bind=function(decorated,container,$container){var self=this;var setupResultsEvents=false;decorated.call(this,container,$container);container.on("open",function(){self._showDropdown();self._attachPositioningHandler(container);if(!setupResultsEvents){setupResultsEvents=true;container.on("results:all",function(){self._positionDropdown();self._resizeDropdown()});container.on("results:append",function(){self._positionDropdown();self._resizeDropdown()})}});container.on("close",function(){self._hideDropdown();self._detachPositioningHandler(container)});this.$dropdownContainer.on("mousedown",function(evt){evt.stopPropagation()})};AttachBody.prototype.destroy=function(decorated){decorated.call(this);this.$dropdownContainer.remove()};AttachBody.prototype.position=function(decorated,$dropdown,$container){$dropdown.attr("class",$container.attr("class"));$dropdown.removeClass("select2");$dropdown.addClass("select2-container--open");$dropdown.css({position:"absolute",top:-999999});this.$container=$container};AttachBody.prototype.render=function(decorated){var $container=$("<span></span>");var $dropdown=decorated.call(this);$container.append($dropdown);this.$dropdownContainer=$container;return $container};AttachBody.prototype._hideDropdown=function(decorated){this.$dropdownContainer.detach()};AttachBody.prototype._attachPositioningHandler=function(decorated,container){var self=this;var scrollEvent="scroll.select2."+container.id;var resizeEvent="resize.select2."+container.id;var orientationEvent="orientationchange.select2."+container.id;var $watchers=this.$container.parents().filter(Utils.hasScroll);$watchers.each(function(){Utils.StoreData(this,"select2-scroll-position",{x:$(this).scrollLeft(),y:$(this).scrollTop()})});$watchers.on(scrollEvent,function(ev){var position=Utils.GetData(this,"select2-scroll-position");$(this).scrollTop(position.y)});$(window).on(scrollEvent+" "+resizeEvent+" "+orientationEvent,function(e){self._positionDropdown();self._resizeDropdown()})};AttachBody.prototype._detachPositioningHandler=function(decorated,container){var scrollEvent="scroll.select2."+container.id;var resizeEvent="resize.select2."+container.id;var orientationEvent="orientationchange.select2."+container.id;var $watchers=this.$container.parents().filter(Utils.hasScroll);$watchers.off(scrollEvent);$(window).off(scrollEvent+" "+resizeEvent+" "+orientationEvent)};AttachBody.prototype._positionDropdown=function(){var $window=$(window);var isCurrentlyAbove=this.$dropdown.hasClass("select2-dropdown--above");var isCurrentlyBelow=this.$dropdown.hasClass("select2-dropdown--below");var newDirection=null;var offset=this.$container.offset();offset.bottom=offset.top+this.$container.outerHeight(false);var container={height:this.$container.outerHeight(false)};container.top=offset.top;container.bottom=offset.top+container.height;var dropdown={height:this.$dropdown.outerHeight(false)};var viewport={top:$window.scrollTop(),bottom:$window.scrollTop()+$window.height()};var enoughRoomAbove=viewport.top<offset.top-dropdown.height;var enoughRoomBelow=viewport.bottom>offset.bottom+dropdown.height;var css={left:offset.left,top:container.bottom};var $offsetParent=this.$dropdownParent;if($offsetParent.css("position")==="static"){$offsetParent=$offsetParent.offsetParent()}var parentOffset=$offsetParent.offset();css.top-=parentOffset.top;css.left-=parentOffset.left;if(!isCurrentlyAbove&&!isCurrentlyBelow){newDirection="below"}if(!enoughRoomBelow&&enoughRoomAbove&&!isCurrentlyAbove){newDirection="above"}else if(!enoughRoomAbove&&enoughRoomBelow&&isCurrentlyAbove){newDirection="below"}if(newDirection=="above"||isCurrentlyAbove&&newDirection!=="below"){css.top=container.top-parentOffset.top-dropdown.height}if(newDirection!=null){this.$dropdown.removeClass("select2-dropdown--below select2-dropdown--above").addClass("select2-dropdown--"+newDirection);this.$container.removeClass("select2-container--below select2-container--above").addClass("select2-container--"+newDirection)}this.$dropdownContainer.css(css)};AttachBody.prototype._resizeDropdown=function(){var css={width:this.$container.outerWidth(false)+"px"};if(this.options.get("dropdownAutoWidth")){css.minWidth=css.width;css.position="relative";css.width="auto"}this.$dropdown.css(css)};AttachBody.prototype._showDropdown=function(decorated){this.$dropdownContainer.appendTo(this.$dropdownParent);this._positionDropdown();this._resizeDropdown()};return AttachBody});S2.define("select2/dropdown/minimumResultsForSearch",[],function(){function countResults(data){var count=0;for(var d=0;d<data.length;d++){var item=data[d];if(item.children){count+=countResults(item.children)}else{count++}}return count}function MinimumResultsForSearch(decorated,$element,options,dataAdapter){this.minimumResultsForSearch=options.get("minimumResultsForSearch");if(this.minimumResultsForSearch<0){this.minimumResultsForSearch=Infinity}decorated.call(this,$element,options,dataAdapter)}MinimumResultsForSearch.prototype.showSearch=function(decorated,params){if(countResults(params.data.results)<this.minimumResultsForSearch){return false}return decorated.call(this,params)};return MinimumResultsForSearch});S2.define("select2/dropdown/selectOnClose",["../utils"],function(Utils){function SelectOnClose(){}SelectOnClose.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("close",function(params){self._handleSelectOnClose(params)})};SelectOnClose.prototype._handleSelectOnClose=function(_,params){if(params&&params.originalSelect2Event!=null){var event=params.originalSelect2Event;if(event._type==="select"||event._type==="unselect"){return}}var $highlightedResults=this.getHighlightedResults();if($highlightedResults.length<1){return}var data=Utils.GetData($highlightedResults[0],"data");if(data.element!=null&&data.element.selected||data.element==null&&data.selected){return}this.trigger("select",{data:data})};return SelectOnClose});S2.define("select2/dropdown/closeOnSelect",[],function(){function CloseOnSelect(){}CloseOnSelect.prototype.bind=function(decorated,container,$container){var self=this;decorated.call(this,container,$container);container.on("select",function(evt){self._selectTriggered(evt)});container.on("unselect",function(evt){self._selectTriggered(evt)})};CloseOnSelect.prototype._selectTriggered=function(_,evt){var originalEvent=evt.originalEvent;if(originalEvent&&originalEvent.ctrlKey){return}this.trigger("close",{originalEvent:originalEvent,originalSelect2Event:evt})};return CloseOnSelect});S2.define("select2/i18n/en",[],function(){return{errorLoading:function(){return"The results could not be loaded."},inputTooLong:function(args){var overChars=args.input.length-args.maximum;var message="Please delete "+overChars+" character";if(overChars!=1){message+="s"}return message},inputTooShort:function(args){var remainingChars=args.minimum-args.input.length;var message="Please enter "+remainingChars+" or more characters";return message},loadingMore:function(){return"Loading more results…"},maximumSelected:function(args){var message="You can only select "+args.maximum+" item";if(args.maximum!=1){message+="s"}return message},noResults:function(){return"No results found"},searching:function(){return"Searching…"}}});S2.define("select2/defaults",["jquery","require","./results","./selection/single","./selection/multiple","./selection/placeholder","./selection/allowClear","./selection/search","./selection/eventRelay","./utils","./translation","./diacritics","./data/select","./data/array","./data/ajax","./data/tags","./data/tokenizer","./data/minimumInputLength","./data/maximumInputLength","./data/maximumSelectionLength","./dropdown","./dropdown/search","./dropdown/hidePlaceholder","./dropdown/infiniteScroll","./dropdown/attachBody","./dropdown/minimumResultsForSearch","./dropdown/selectOnClose","./dropdown/closeOnSelect","./i18n/en"],function($,require,ResultsList,SingleSelection,MultipleSelection,Placeholder,AllowClear,SelectionSearch,EventRelay,Utils,Translation,DIACRITICS,SelectData,ArrayData,AjaxData,Tags,Tokenizer,MinimumInputLength,MaximumInputLength,MaximumSelectionLength,Dropdown,DropdownSearch,HidePlaceholder,InfiniteScroll,AttachBody,MinimumResultsForSearch,SelectOnClose,CloseOnSelect,EnglishTranslation){function Defaults(){this.reset()}Defaults.prototype.apply=function(options){options=$.extend(true,{},this.defaults,options);if(options.dataAdapter==null){if(options.ajax!=null){options.dataAdapter=AjaxData}else if(options.data!=null){options.dataAdapter=ArrayData}else{options.dataAdapter=SelectData}if(options.minimumInputLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MinimumInputLength)}if(options.maximumInputLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MaximumInputLength)}if(options.maximumSelectionLength>0){options.dataAdapter=Utils.Decorate(options.dataAdapter,MaximumSelectionLength)}if(options.tags){options.dataAdapter=Utils.Decorate(options.dataAdapter,Tags)}if(options.tokenSeparators!=null||options.tokenizer!=null){options.dataAdapter=Utils.Decorate(options.dataAdapter,Tokenizer)}if(options.query!=null){var Query=require(options.amdBase+"compat/query");options.dataAdapter=Utils.Decorate(options.dataAdapter,Query)}if(options.initSelection!=null){var InitSelection=require(options.amdBase+"compat/initSelection");options.dataAdapter=Utils.Decorate(options.dataAdapter,InitSelection)}}if(options.resultsAdapter==null){options.resultsAdapter=ResultsList;if(options.ajax!=null){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,InfiniteScroll)}if(options.placeholder!=null){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,HidePlaceholder)}if(options.selectOnClose){options.resultsAdapter=Utils.Decorate(options.resultsAdapter,SelectOnClose)}}if(options.dropdownAdapter==null){if(options.multiple){options.dropdownAdapter=Dropdown}else{var SearchableDropdown=Utils.Decorate(Dropdown,DropdownSearch);options.dropdownAdapter=SearchableDropdown}if(options.minimumResultsForSearch!==0){options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,MinimumResultsForSearch)}if(options.closeOnSelect){options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,CloseOnSelect)}if(options.dropdownCssClass!=null||options.dropdownCss!=null||options.adaptDropdownCssClass!=null){var DropdownCSS=require(options.amdBase+"compat/dropdownCss");options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,DropdownCSS)}options.dropdownAdapter=Utils.Decorate(options.dropdownAdapter,AttachBody)}if(options.selectionAdapter==null){if(options.multiple){options.selectionAdapter=MultipleSelection}else{options.selectionAdapter=SingleSelection}if(options.placeholder!=null){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,Placeholder)}if(options.allowClear){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,AllowClear)}if(options.multiple){options.selectionAdapter=Utils.Decorate(options.selectionAdapter,SelectionSearch)}if(options.containerCssClass!=null||options.containerCss!=null||options.adaptContainerCssClass!=null){var ContainerCSS=require(options.amdBase+"compat/containerCss");options.selectionAdapter=Utils.Decorate(options.selectionAdapter,ContainerCSS)}options.selectionAdapter=Utils.Decorate(options.selectionAdapter,EventRelay)}if(typeof options.language==="string"){if(options.language.indexOf("-")>0){var languageParts=options.language.split("-");var baseLanguage=languageParts[0];options.language=[options.language,baseLanguage]}else{options.language=[options.language]}}if($.isArray(options.language)){var languages=new Translation;options.language.push("en");var languageNames=options.language;for(var l=0;l<languageNames.length;l++){var name=languageNames[l];var language={};try{language=Translation.loadPath(name)}catch(e){try{name=this.defaults.amdLanguageBase+name;language=Translation.loadPath(name)}catch(ex){if(options.debug&&window.console&&console.warn){console.warn('Select2: The language file for "'+name+'" could not be '+"automatically loaded. A fallback will be used instead.")}continue}}languages.extend(language)}options.translations=languages}else{var baseTranslation=Translation.loadPath(this.defaults.amdLanguageBase+"en");var customTranslation=new Translation(options.language);customTranslation.extend(baseTranslation);options.translations=customTranslation}return options};Defaults.prototype.reset=function(){function stripDiacritics(text){function match(a){return DIACRITICS[a]||a}return text.replace(/[^\u0000-\u007E]/g,match)}function matcher(params,data){if($.trim(params.term)===""){return data}if(data.children&&data.children.length>0){var match=$.extend(true,{},data);for(var c=data.children.length-1;c>=0;c--){var child=data.children[c];var matches=matcher(params,child);if(matches==null){match.children.splice(c,1)}}if(match.children.length>0){return match}return matcher(params,match)}var original=stripDiacritics(data.text).toUpperCase();var term=stripDiacritics(params.term).toUpperCase();if(original.indexOf(term)>-1){return data}return null}this.defaults={amdBase:"./",amdLanguageBase:"./i18n/",closeOnSelect:true,debug:false,dropdownAutoWidth:false,escapeMarkup:Utils.escapeMarkup,language:EnglishTranslation,matcher:matcher,minimumInputLength:0,maximumInputLength:0,maximumSelectionLength:0,minimumResultsForSearch:0,selectOnClose:false,sorter:function(data){return data},templateResult:function(result){return result.text},templateSelection:function(selection){return selection.text},theme:"default",width:"resolve"}};Defaults.prototype.set=function(key,value){var camelKey=$.camelCase(key);var data={};data[camelKey]=value;var convertedData=Utils._convertData(data);$.extend(true,this.defaults,convertedData)};var defaults=new Defaults;return defaults});S2.define("select2/options",["require","jquery","./defaults","./utils"],function(require,$,Defaults,Utils){function Options(options,$element){this.options=options;if($element!=null){this.fromElement($element)}this.options=Defaults.apply(this.options);if($element&&$element.is("input")){var InputCompat=require(this.get("amdBase")+"compat/inputData");this.options.dataAdapter=Utils.Decorate(this.options.dataAdapter,InputCompat)}}Options.prototype.fromElement=function($e){var excludedData=["select2"];if(this.options.multiple==null){this.options.multiple=$e.prop("multiple")}if(this.options.disabled==null){this.options.disabled=$e.prop("disabled")}if(this.options.language==null){if($e.prop("lang")){this.options.language=$e.prop("lang").toLowerCase()}else if($e.closest("[lang]").prop("lang")){this.options.language=$e.closest("[lang]").prop("lang")}}if(this.options.dir==null){if($e.prop("dir")){this.options.dir=$e.prop("dir")}else if($e.closest("[dir]").prop("dir")){this.options.dir=$e.closest("[dir]").prop("dir")}else{this.options.dir="ltr"}}$e.prop("disabled",this.options.disabled);$e.prop("multiple",this.options.multiple);if(Utils.GetData($e[0],"select2Tags")){if(this.options.debug&&window.console&&console.warn){console.warn("Select2: The `data-select2-tags` attribute has been changed to "+'use the `data-data` and `data-tags="true"` attributes and will be '+"removed in future versions of Select2.")}Utils.StoreData($e[0],"data",Utils.GetData($e[0],"select2Tags"));Utils.StoreData($e[0],"tags",true)}if(Utils.GetData($e[0],"ajaxUrl")){if(this.options.debug&&window.console&&console.warn){console.warn("Select2: The `data-ajax-url` attribute has been changed to "+"`data-ajax--url` and support for the old attribute will be removed"+" in future versions of Select2.")}$e.attr("ajax--url",Utils.GetData($e[0],"ajaxUrl"));Utils.StoreData($e[0],"ajax-Url",Utils.GetData($e[0],"ajaxUrl"))}var dataset={};if($.fn.jquery&&$.fn.jquery.substr(0,2)=="1."&&$e[0].dataset){dataset=$.extend(true,{},$e[0].dataset,Utils.GetData($e[0]))}else{dataset=Utils.GetData($e[0])}var data=$.extend(true,{},dataset);data=Utils._convertData(data);for(var key in data){if($.inArray(key,excludedData)>-1){continue}if($.isPlainObject(this.options[key])){$.extend(this.options[key],data[key])}else{this.options[key]=data[key]}}return this};Options.prototype.get=function(key){return this.options[key]};Options.prototype.set=function(key,val){this.options[key]=val};return Options});S2.define("select2/core",["jquery","./options","./utils","./keys"],function($,Options,Utils,KEYS){var Select2=function($element,options){if(Utils.GetData($element[0],"select2")!=null){Utils.GetData($element[0],"select2").destroy()}this.$element=$element;this.id=this._generateId($element);options=options||{};this.options=new Options(options,$element);Select2.__super__.constructor.call(this);var tabindex=$element.attr("tabindex")||0;Utils.StoreData($element[0],"old-tabindex",tabindex);$element.attr("tabindex","-1");var DataAdapter=this.options.get("dataAdapter");this.dataAdapter=new DataAdapter($element,this.options);var $container=this.render();this._placeContainer($container);var SelectionAdapter=this.options.get("selectionAdapter");this.selection=new SelectionAdapter($element,this.options);this.$selection=this.selection.render();this.selection.position(this.$selection,$container);var DropdownAdapter=this.options.get("dropdownAdapter");this.dropdown=new DropdownAdapter($element,this.options);this.$dropdown=this.dropdown.render();this.dropdown.position(this.$dropdown,$container);var ResultsAdapter=this.options.get("resultsAdapter");this.results=new ResultsAdapter($element,this.options,this.dataAdapter);this.$results=this.results.render();this.results.position(this.$results,this.$dropdown);var self=this;this._bindAdapters();this._registerDomEvents();this._registerDataEvents();this._registerSelectionEvents();this._registerDropdownEvents();this._registerResultsEvents();this._registerEvents();this.dataAdapter.current(function(initialData){self.trigger("selection:update",{data:initialData})});$element.addClass("select2-hidden-accessible");$element.attr("aria-hidden","true");this._syncAttributes();Utils.StoreData($element[0],"select2",this);$element.data("select2",this)};Utils.Extend(Select2,Utils.Observable);Select2.prototype._generateId=function($element){var id="";if($element.attr("id")!=null){id=$element.attr("id")}else if($element.attr("name")!=null){id=$element.attr("name")+"-"+Utils.generateChars(2)}else{id=Utils.generateChars(4)}id=id.replace(/(:|\.|\[|\]|,)/g,"");id="select2-"+id;return id};Select2.prototype._placeContainer=function($container){$container.insertAfter(this.$element);var width=this._resolveWidth(this.$element,this.options.get("width"));if(width!=null){$container.css("width",width)}};Select2.prototype._resolveWidth=function($element,method){var WIDTH=/^width:(([-+]?([0-9]*\.)?[0-9]+)(px|em|ex|%|in|cm|mm|pt|pc))/i;if(method=="resolve"){var styleWidth=this._resolveWidth($element,"style");if(styleWidth!=null){return styleWidth}return this._resolveWidth($element,"element")}if(method=="element"){var elementWidth=$element.outerWidth(false);if(elementWidth<=0){return"auto"}return elementWidth+"px"}if(method=="style"){var style=$element.attr("style");if(typeof style!=="string"){return null}var attrs=style.split(";");for(var i=0,l=attrs.length;i<l;i=i+1){var attr=attrs[i].replace(/\s/g,"");var matches=attr.match(WIDTH);if(matches!==null&&matches.length>=1){return matches[1]}}return null}return method};Select2.prototype._bindAdapters=function(){this.dataAdapter.bind(this,this.$container);this.selection.bind(this,this.$container);this.dropdown.bind(this,this.$container);this.results.bind(this,this.$container)};Select2.prototype._registerDomEvents=function(){var self=this;this.$element.on("change.select2",function(){self.dataAdapter.current(function(data){self.trigger("selection:update",{data:data})})});this.$element.on("focus.select2",function(evt){self.trigger("focus",evt)});this._syncA=Utils.bind(this._syncAttributes,this);this._syncS=Utils.bind(this._syncSubtree,this);if(this.$element[0].attachEvent){this.$element[0].attachEvent("onpropertychange",this._syncA)}var observer=window.MutationObserver||window.WebKitMutationObserver||window.MozMutationObserver;if(observer!=null){this._observer=new observer(function(mutations){$.each(mutations,self._syncA);$.each(mutations,self._syncS)});this._observer.observe(this.$element[0],{attributes:true,childList:true,subtree:false})}else if(this.$element[0].addEventListener){this.$element[0].addEventListener("DOMAttrModified",self._syncA,false);this.$element[0].addEventListener("DOMNodeInserted",self._syncS,false);this.$element[0].addEventListener("DOMNodeRemoved",self._syncS,false)}};Select2.prototype._registerDataEvents=function(){var self=this;this.dataAdapter.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerSelectionEvents=function(){var self=this;var nonRelayEvents=["toggle","focus"];this.selection.on("toggle",function(){self.toggleDropdown()});this.selection.on("focus",function(params){self.focus(params)});this.selection.on("*",function(name,params){if($.inArray(name,nonRelayEvents)!==-1){return}self.trigger(name,params)})};Select2.prototype._registerDropdownEvents=function(){var self=this;this.dropdown.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerResultsEvents=function(){var self=this;this.results.on("*",function(name,params){self.trigger(name,params)})};Select2.prototype._registerEvents=function(){var self=this;this.on("open",function(){self.$container.addClass("select2-container--open")});this.on("close",function(){self.$container.removeClass("select2-container--open")});this.on("enable",function(){self.$container.removeClass("select2-container--disabled")});this.on("disable",function(){self.$container.addClass("select2-container--disabled")});this.on("blur",function(){self.$container.removeClass("select2-container--focus")});this.on("query",function(params){if(!self.isOpen()){self.trigger("open",{})}this.dataAdapter.query(params,function(data){self.trigger("results:all",{data:data,query:params})})});this.on("query:append",function(params){this.dataAdapter.query(params,function(data){self.trigger("results:append",{data:data,query:params})})});this.on("keypress",function(evt){var key=evt.which;if(self.isOpen()){if(key===KEYS.ESC||key===KEYS.TAB||key===KEYS.UP&&evt.altKey){self.close();evt.preventDefault()}else if(key===KEYS.ENTER){self.trigger("results:select",{});evt.preventDefault()}else if(key===KEYS.SPACE&&evt.ctrlKey){self.trigger("results:toggle",{});evt.preventDefault()}else if(key===KEYS.UP){self.trigger("results:previous",{});evt.preventDefault()}else if(key===KEYS.DOWN){self.trigger("results:next",{});evt.preventDefault()}}else{if(key===KEYS.ENTER||key===KEYS.SPACE||key===KEYS.DOWN&&evt.altKey){self.open();evt.preventDefault()}}})};Select2.prototype._syncAttributes=function(){this.options.set("disabled",this.$element.prop("disabled"));if(this.options.get("disabled")){if(this.isOpen()){this.close()}this.trigger("disable",{})}else{this.trigger("enable",{})}};Select2.prototype._syncSubtree=function(evt,mutations){var changed=false;var self=this;if(evt&&evt.target&&(evt.target.nodeName!=="OPTION"&&evt.target.nodeName!=="OPTGROUP")){return}if(!mutations){changed=true}else if(mutations.addedNodes&&mutations.addedNodes.length>0){for(var n=0;n<mutations.addedNodes.length;n++){var node=mutations.addedNodes[n];if(node.selected){changed=true}}}else if(mutations.removedNodes&&mutations.removedNodes.length>0){changed=true}if(changed){this.dataAdapter.current(function(currentData){self.trigger("selection:update",{data:currentData})})}};Select2.prototype.trigger=function(name,args){var actualTrigger=Select2.__super__.trigger;var preTriggerMap={open:"opening",close:"closing",select:"selecting",unselect:"unselecting",clear:"clearing"};if(args===undefined){args={}}if(name in preTriggerMap){var preTriggerName=preTriggerMap[name];var preTriggerArgs={prevented:false,name:name,args:args};actualTrigger.call(this,preTriggerName,preTriggerArgs);if(preTriggerArgs.prevented){args.prevented=true;return}}actualTrigger.call(this,name,args)};Select2.prototype.toggleDropdown=function(){if(this.options.get("disabled")){return}if(this.isOpen()){this.close()}else{this.open()}};Select2.prototype.open=function(){if(this.isOpen()){return}this.trigger("query",{})};Select2.prototype.close=function(){if(!this.isOpen()){return}this.trigger("close",{})};Select2.prototype.isOpen=function(){return this.$container.hasClass("select2-container--open")};Select2.prototype.hasFocus=function(){return this.$container.hasClass("select2-container--focus")};Select2.prototype.focus=function(data){if(this.hasFocus()){return}this.$container.addClass("select2-container--focus");this.trigger("focus",{})};Select2.prototype.enable=function(args){if(this.options.get("debug")&&window.console&&console.warn){console.warn('Select2: The `select2("enable")` method has been deprecated and will'+' be removed in later Select2 versions. Use $element.prop("disabled")'+" instead.")}if(args==null||args.length===0){args=[true]}var disabled=!args[0];this.$element.prop("disabled",disabled)};Select2.prototype.data=function(){if(this.options.get("debug")&&arguments.length>0&&window.console&&console.warn){console.warn('Select2: Data can no longer be set using `select2("data")`. You '+"should consider setting the value instead using `$element.val()`.")}var data=[];this.dataAdapter.current(function(currentData){data=currentData});return data};Select2.prototype.val=function(args){if(this.options.get("debug")&&window.console&&console.warn){console.warn('Select2: The `select2("val")` method has been deprecated and will be'+" removed in later Select2 versions. Use $element.val() instead.")}if(args==null||args.length===0){return this.$element.val()}var newVal=args[0];if($.isArray(newVal)){newVal=$.map(newVal,function(obj){return obj.toString()})}this.$element.val(newVal).trigger("change")};Select2.prototype.destroy=function(){this.$container.remove();if(this.$element[0].detachEvent){this.$element[0].detachEvent("onpropertychange",this._syncA)}if(this._observer!=null){this._observer.disconnect();this._observer=null}else if(this.$element[0].removeEventListener){this.$element[0].removeEventListener("DOMAttrModified",this._syncA,false);this.$element[0].removeEventListener("DOMNodeInserted",this._syncS,false);this.$element[0].removeEventListener("DOMNodeRemoved",this._syncS,false)}this._syncA=null;this._syncS=null;this.$element.off(".select2");this.$element.attr("tabindex",Utils.GetData(this.$element[0],"old-tabindex"));this.$element.removeClass("select2-hidden-accessible");this.$element.attr("aria-hidden","false");Utils.RemoveData(this.$element[0]);this.$element.removeData("select2");this.dataAdapter.destroy();this.selection.destroy();this.dropdown.destroy();this.results.destroy();this.dataAdapter=null;this.selection=null;this.dropdown=null;this.results=null};Select2.prototype.render=function(){var $container=$('<span class="select2 select2-container">'+'<span class="selection"></span>'+'<span class="dropdown-wrapper" aria-hidden="true"></span>'+"</span>");$container.attr("dir",this.options.get("dir"));this.$container=$container;this.$container.addClass("select2-container--"+this.options.get("theme"));Utils.StoreData($container[0],"element",this.$element);return $container};return Select2});S2.define("jquery-mousewheel",["jquery"],function($){return $});S2.define("jquery.select2",["jquery","jquery-mousewheel","./select2/core","./select2/defaults","./select2/utils"],function($,_,Select2,Defaults,Utils){if($.fn.select2==null){var thisMethods=["open","close","destroy"];$.fn.select2=function(options){options=options||{};if(typeof options==="object"){this.each(function(){var instanceOptions=$.extend(true,{},options);var instance=new Select2($(this),instanceOptions)});return this}else if(typeof options==="string"){var ret;var args=Array.prototype.slice.call(arguments,1);this.each(function(){var instance=Utils.GetData(this,"select2");if(instance==null&&window.console&&console.error){console.error("The select2('"+options+"') method was called on an "+"element that is not using Select2.")}ret=instance[options].apply(instance,args)});if($.inArray(options,thisMethods)>-1){return this}return ret}else{throw new Error("Invalid arguments for Select2: "+options)}}}if($.fn.select2.defaults==null){$.fn.select2.defaults=Defaults}return Select2});return{define:S2.define,require:S2.require}}();var select2=S2.require("jquery.select2");jQuery.fn.select2.amd=S2;return select2});
readme.txt CHANGED
@@ -6,7 +6,7 @@ Requires at least: 4.9
6
  License: GPL2
7
  Tested up to: 5.7
8
  Requires PHP: 5.6
9
- Stable tag: 5.0.1
10
 
11
  No setup required! You only need an SSL certificate, and this plugin will do the rest.
12
 
@@ -89,6 +89,10 @@ If you are experiencing redirect loops on your site, try these [instructions](ht
89
  Yes. There is a dedicated network settings page where you can switch between network activated SSL and per page SSL. In the dedicated pro for multisite plugin, you can override all site settings for SSL on the network level, and can activate and deactivate SSL in the network menu for each site.
90
 
91
  == Changelog ==
 
 
 
 
92
  = 5.0.1 =
93
  * Fix: obsolete variable in function causing php errors on some configurations.
94
 
6
  License: GPL2
7
  Tested up to: 5.7
8
  Requires PHP: 5.6
9
+ Stable tag: 5.0.2
10
 
11
  No setup required! You only need an SSL certificate, and this plugin will do the rest.
12
 
89
  Yes. There is a dedicated network settings page where you can switch between network activated SSL and per page SSL. In the dedicated pro for multisite plugin, you can override all site settings for SSL on the network level, and can activate and deactivate SSL in the network menu for each site.
90
 
91
  == Changelog ==
92
+ = 5.0.2 =
93
+ * Improvement: remove some files to prevent false positive warnings from windows defender
94
+ * Improvement: move variable in cpanel integration to prevent php warnings.
95
+
96
  = 5.0.1 =
97
  * Fix: obsolete variable in function causing php errors on some configurations.
98
 
rlrsssl-really-simple-ssl.php CHANGED
@@ -3,7 +3,7 @@
3
  * Plugin Name: Really Simple SSL
4
  * Plugin URI: https://really-simple-ssl.com
5
  * Description: Lightweight plugin without any setup to make your site SSL proof
6
- * Version: 5.0.1
7
  * Author: Really Simple Plugins
8
  * Author URI: https://really-simple-plugins.com
9
  * License: GPL2
3
  * Plugin Name: Really Simple SSL
4
  * Plugin URI: https://really-simple-ssl.com
5
  * Description: Lightweight plugin without any setup to make your site SSL proof
6
+ * Version: 5.0.2
7
  * Author: Really Simple Plugins
8
  * Author URI: https://really-simple-plugins.com
9
  * License: GPL2