puvox-library 1.0.23 → 1.0.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/library_standard.js +26 -12
  2. package/package.json +1 -1
@@ -828,30 +828,29 @@ const puvox_library =
828
828
  let finalStr = (withT ? str.replace(' ', 'T') : str);
829
829
  return withMS ? finalStr : finalStr.split('.')[0]; //2022-07-09 19:25:00.276
830
830
  },
831
- // in some langs, the date object has distinctions, so the two below needs separated methods
832
- StringToDatetimeUtc(str, format, culture) { return new Date(str); }, // DateTime, bool, str
833
- StringToDatetimeLocal(str, format, culture) { return new Date(str); }, // DateTime, bool, str
834
- UtcDatetime() {
831
+ // in some langs, the date object has distinctions, so the two below needs separated methods. However, the "date" object returned from them, are same, just the representation can be local or UTC depending user.
832
+ StringToDatetimeUtc(str, format, culture) { return new Date(str); },
833
+ StringToDatetimeLocal(str, format, culture) { return new Date(str); },
834
+ DatetimeUtc() {
835
835
  var now = new Date();
836
836
  var utc = new Date(now.getTime()); // + now.getTimezoneOffset() * 60000 is not needed !!!!!!
837
837
  return utc;
838
- },
839
- UtcDatetimeFrom(dt) { }, // DateTime
838
+ }, UtcDatetime() { return this.DatetimeUtc(); },
840
839
  // UTC
841
- UtcTimestamp() {
840
+ TimestampUtc() {
842
841
  return Math.floor(new Date().getTime());
843
- },
842
+ }, UtcTimestamp() { return this.TimestampUtc(); },
844
843
  //i.e. input: "2021-03-08 11:59:00" | output : 1650000000000 (milliseconds)
845
844
  // [DONT CHANGE THIS FUNC, I'VE REVISED]
846
- UtcTimestampFrom(dt) {
845
+ DatetimeToTimestampUtc(dt) {
847
846
  let offset = this.getOffsetFromUtc();
848
847
  return ((((new Date( dt )).getTime()) / 1000) + 14400 - offset * 60* 60) * 1000;
849
- },
850
- UtcTimestampToUtcDatetime(ts) {
848
+ }, UtcTimestampFrom(dt) { return this.DatetimeToTimestampUtc(dt); },
849
+ TimestampUtcToDatetimeUtc(ts) {
851
850
  var d = new Date(ts);
852
851
  d.setHours(d.getHours());
853
852
  return d;
854
- },
853
+ }, UtcTimestampToUtcDatetime(ts) { return this.TimestampUtcToDatetimeUtc(ts); },
855
854
  // shorthands
856
855
  MaxDate(d1, d2, d3=null) {},
857
856
  MinDate(d1, d2, d3=null) {},
@@ -2407,6 +2406,18 @@ const puvox_library =
2407
2406
  };
2408
2407
  },
2409
2408
 
2409
+ compare(a, b, operator) {
2410
+ if(operator === '==') return a == b;
2411
+ else if (operator === '===') return a === b;
2412
+ else if (operator === '!=') return a != b;
2413
+ else if (operator === '!==') return a !== b;
2414
+ else if (operator === '>') return a > b;
2415
+ else if (operator === '>=') return a >= b;
2416
+ else if (operator === '<') return a < b;
2417
+ else if (operator === '<=') return a <= b;
2418
+ else throw "Unknown operator";
2419
+ },
2420
+
2410
2421
  // random NUMBER or STRINGS
2411
2422
  RandomNum(maxNum) { return Math.floor((Math.random() * maxNum) + 1); },
2412
2423
 
@@ -2569,6 +2580,9 @@ const puvox_library =
2569
2580
  return this.md5( this.stringify(obj_or_str) );
2570
2581
  },
2571
2582
 
2583
+ stringifyWithUndefined(obj){
2584
+ return JSON.stringify(obj, function(key, value){ return value === undefined ? null : value; });
2585
+ },
2572
2586
  // https://gist.github.com/PixnBits/8811212
2573
2587
  //md5(str){ let name='crypto'; return require(name).createHash('md5').update(str).digest("hex"); }
2574
2588
  md5(str){var md5cycle=function(x,k){var a=x[0],b=x[1],c=x[2],d=x[3];a=ff(a,b,c,d,k[0],7,-680876936);d=ff(d,a,b,c,k[1],12,-389564586);c=ff(c,d,a,b,k[2],17,606105819);b=ff(b,c,d,a,k[3],22,-1044525330);a=ff(a,b,c,d,k[4],7,-176418897);d=ff(d,a,b,c,k[5],12,1200080426);c=ff(c,d,a,b,k[6],17,-1473231341);b=ff(b,c,d,a,k[7],22,-45705983);a=ff(a,b,c,d,k[8],7,1770035416);d=ff(d,a,b,c,k[9],12,-1958414417);c=ff(c,d,a,b,k[10],17,-42063);b=ff(b,c,d,a,k[11],22,-1990404162);a=ff(a,b,c,d,k[12],7,1804603682);d=ff(d,a,b,c,k[13],12,-40341101);c=ff(c,d,a,b,k[14],17,-1502002290);b=ff(b,c,d,a,k[15],22,1236535329);a=gg(a,b,c,d,k[1],5,-165796510);d=gg(d,a,b,c,k[6],9,-1069501632);c=gg(c,d,a,b,k[11],14,643717713);b=gg(b,c,d,a,k[0],20,-373897302);a=gg(a,b,c,d,k[5],5,-701558691);d=gg(d,a,b,c,k[10],9,38016083);c=gg(c,d,a,b,k[15],14,-660478335);b=gg(b,c,d,a,k[4],20,-405537848);a=gg(a,b,c,d,k[9],5,568446438);d=gg(d,a,b,c,k[14],9,-1019803690);c=gg(c,d,a,b,k[3],14,-187363961);b=gg(b,c,d,a,k[8],20,1163531501);a=gg(a,b,c,d,k[13],5,-1444681467);d=gg(d,a,b,c,k[2],9,-51403784);c=gg(c,d,a,b,k[7],14,1735328473);b=gg(b,c,d,a,k[12],20,-1926607734);a=hh(a,b,c,d,k[5],4,-378558);d=hh(d,a,b,c,k[8],11,-2022574463);c=hh(c,d,a,b,k[11],16,1839030562);b=hh(b,c,d,a,k[14],23,-35309556);a=hh(a,b,c,d,k[1],4,-1530992060);d=hh(d,a,b,c,k[4],11,1272893353);c=hh(c,d,a,b,k[7],16,-155497632);b=hh(b,c,d,a,k[10],23,-1094730640);a=hh(a,b,c,d,k[13],4,681279174);d=hh(d,a,b,c,k[0],11,-358537222);c=hh(c,d,a,b,k[3],16,-722521979);b=hh(b,c,d,a,k[6],23,76029189);a=hh(a,b,c,d,k[9],4,-640364487);d=hh(d,a,b,c,k[12],11,-421815835);c=hh(c,d,a,b,k[15],16,530742520);b=hh(b,c,d,a,k[2],23,-995338651);a=ii(a,b,c,d,k[0],6,-198630844);d=ii(d,a,b,c,k[7],10,1126891415);c=ii(c,d,a,b,k[14],15,-1416354905);b=ii(b,c,d,a,k[5],21,-57434055);a=ii(a,b,c,d,k[12],6,1700485571);d=ii(d,a,b,c,k[3],10,-1894986606);c=ii(c,d,a,b,k[10],15,-1051523);b=ii(b,c,d,a,k[1],21,-2054922799);a=ii(a,b,c,d,k[8],6,1873313359);d=ii(d,a,b,c,k[15],10,-30611744);c=ii(c,d,a,b,k[6],15,-1560198380);b=ii(b,c,d,a,k[13],21,1309151649);a=ii(a,b,c,d,k[4],6,-145523070);d=ii(d,a,b,c,k[11],10,-1120210379);c=ii(c,d,a,b,k[2],15,718787259);b=ii(b,c,d,a,k[9],21,-343485551);x[0]=add32(a,x[0]);x[1]=add32(b,x[1]);x[2]=add32(c,x[2]);x[3]=add32(d,x[3])};var cmn=function(q,a,b,x,s,t){a=add32(add32(a,q),add32(x,t));return add32(a<<s|a>>>32-s,b)};var ff=function(a,b,c,d,x,s,t){return cmn(b&c|~b&d,a,b,x,s,t)};var gg=function(a,b,c,d,x,s,t){return cmn(b&d|c&~d,a,b,x,s,t)};var hh=function(a,b,c,d,x,s,t){return cmn(b^c^d,a,b,x,s,t)};var ii=function(a,b,c,d,x,s,t){return cmn(c^(b|~d),a,b,x,s,t)};var md51=function(s){var txt="",n=s.length,state=[1732584193,-271733879,-1732584194,271733878],i;for(i=64;i<=s.length;i+=64){md5cycle(state,md5blk(s.substring(i-64,i)))}s=s.substring(i-64);var tail=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];for(i=0;i<s.length;i++)tail[i>>2]|=s.charCodeAt(i)<<(i%4<<3);tail[i>>2]|=128<<(i%4<<3);if(i>55){md5cycle(state,tail);for(i=0;i<16;i++)tail[i]=0}tail[14]=n*8;md5cycle(state,tail);return state};var md5blk=function(s){var md5blks=[],i;for(i=0;i<64;i+=4){md5blks[i>>2]=s.charCodeAt(i)+(s.charCodeAt(i+1)<<8)+(s.charCodeAt(i+2)<<16)+(s.charCodeAt(i+3)<<24)}return md5blks};var hex_chr="0123456789abcdef".split("");var rhex=function(n){var s="",j=0;for(;j<4;j++)s+=hex_chr[n>>j*8+4&15]+hex_chr[n>>j*8&15];return s};var hex=function(x){for(var i=0;i<x.length;i++)x[i]=rhex(x[i]);return x.join("")};var md5_=function(s){return hex(md51(s))};var add32=function(a,b){return a+b&4294967295};if(md5_("hello")!="5d41402abc4b2a76b9719d911017c592"){var add32=function(x,y){var lsw=(x&65535)+(y&65535),msw=(x>>16)+(y>>16)+(lsw>>16);return msw<<16|lsw&65535}}return md5_(str)},
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "puvox-library",
3
- "version": "1.0.23",
3
+ "version": "1.0.25",
4
4
  "description": "library-class-javascript",
5
5
  "main": "library_standard.js",
6
6
  "scripts": {