Files
RuoYi/ruoyi-admin/src/main/resources/static/js/jquery.i18n.properties.min.js

13 lines
8.0 KiB
JavaScript
Raw Normal View History

/******************************************************************************
* jquery.i18n.properties
*
* Dual licensed under the GPL (http://dev.jquery.com/browser/trunk/jquery/GPL-LICENSE.txt) and
* MIT (http://dev.jquery.com/browser/trunk/jquery/MIT-LICENSE.txt) licenses.
*
* @version 1.2.7
* @url https://github.com/jquery-i18n-properties/jquery-i18n-properties
* @inspiration Localisation assistance for jQuery (http://keith-wood.name/localisation.html)
* by Keith Wood (kbwood{at}iinet.com.au) June 2007
*
*****************************************************************************/
(function($){$.i18n={};$.i18n.map={};var debug=function(message){window.console&&console.log("i18n::"+message)};$.i18n.properties=function(settings){var defaults={name:"Messages",language:"",path:"",namespace:null,mode:"vars",cache:false,debug:false,encoding:"UTF-8",async:false,callback:null};settings=$.extend(defaults,settings);if(settings.namespace&&typeof settings.namespace=="string"){if(settings.namespace.match(/^[a-z]*$/)){$.i18n.map[settings.namespace]={}}else{debug("Namespaces can only be lower case letters, a - z");settings.namespace=null}}if(!settings.path.match(/\/$/)){settings.path+="/"}settings.language=this.normaliseLanguageCode(settings);var files=(settings.name&&settings.name.constructor===Array)?settings.name:[settings.name];settings.totalFiles=(files.length*2)+((settings.language.length>=5)?files.length:0);if(settings.debug){debug("totalFiles: "+settings.totalFiles)}settings.filesLoaded=0;files.forEach(function(file){var defaultFileName,shortFileName,longFileName,fileNames;defaultFileName=settings.path+file+".properties";var shortCode=settings.language.substring(0,2);shortFileName=settings.path+file+"_"+shortCode+".properties";if(settings.language.length>=5){var longCode=settings.language.substring(0,5);longFileName=settings.path+file+"_"+longCode+".properties";fileNames=[defaultFileName,shortFileName,longFileName]}else{fileNames=[defaultFileName,shortFileName]}fileNames=[longFileName];loadAndParseFiles(fileNames,settings)});if(settings.callback&&!settings.async){settings.callback()}};$.i18n.prop=function(key){var args=[].slice.call(arguments);var phvList,namespace;if(args.length==2){if($.isArray(args[1])){phvList=args[1]}else{if(typeof args[1]==="object"){namespace=args[1].namespace;var replacements=args[1].replacements;args.splice(-1,1);if(replacements){Array.prototype.push.apply(args,replacements)}}}}var value=(namespace)?$.i18n.map[namespace][key]:$.i18n.map[key];if(value===null){return"["+((namespace)?namespace+"#"+key:key)+"]"}var i;if(typeof(value)=="string"){i=0;while((i=value.indexOf("\\",i))!=-1){if(value.charAt(i+1)=="t"){value=value.substring(0,i)+"\t"+value.substring((i++)+2)}else{if(value.charAt(i+1)=="r"){value=value.substring(0,i)+"\r"+value.substring((i++)+2)}else{if(value.charAt(i+1)=="n"){value=value.substring(0,i)+"\n"+value.substring((i++)+2)}else{if(value.charAt(i+1)=="f"){value=value.substring(0,i)+"\f"+value.substring((i++)+2)}else{if(value.charAt(i+1)=="\\"){value=value.substring(0,i)+"\\"+value.substring((i++)+2)}else{value=value.substring(0,i)+value.substring(i+1)}}}}}}var arr=[],j,index;i=0;while(i<value.length){if(value.charAt(i)=="'"){if(i==value.length-1){value=value.substring(0,i)}else{if(value.charAt(i+1)=="'"){value=value.substring(0,i)+value.substring(++i)}else{j=i+2;while((j=value.indexOf("'",j))!=-1){if(j==value.length-1||value.charAt(j+1)!="'"){value=value.substring(0,i)+value.substring(i+1,j)+value.substring(j+1);i=j-1;break}else{value=value.substring(0,j)+value.substring(++j)}}if(j==-1){value=value.substring(0,i)+value.substring(i+1)}}}}else{if(value.charAt(i)=="{"){j=value.indexOf("}",i+1);if(j==-1){i++}else{index=parseInt(value.substring(i+1,j));if(!isNaN(index)&&index>=0){var s=value.substring(0,i);if(s!==""){arr.push(s)}arr.push(index);i=0;value=value.substring(j+1)}else{i=j+1}}}else{i++}}}if(value!==""){arr.push(value)}value=arr;if(namespace){$.i18n.map[settings.namespace][key]=arr}else{$.i18n.map[key]=arr}}if(typeof(value)=="undefined"||value.length===0){return key}if(value.length==1&&typeof(value[0])=="string"){return value[0]}var str="";for(i=0,j=value.length;i<j;i++){if(typeof(value[i])=="string"){str+=value[i]}else{if(phvList&&value[i]<phvList.length){str+=phvList[value[i]]}else{if(!phvList&&value[i]+1<args.length){str+=args[value[i]+1]}else{str+="{"+value[i]+"}"}}}}return str};function callbackIfComplete(settings){if(settings.debug){debug("callbackIfComplete()");debug("totalFiles: "+settings.totalFiles);debug("filesLoaded: "+settings.filesLoaded)}if(settings.async){if(settings.filesLoaded===settings.totalFiles){if(settings.callback){settings.callback()}