cavalion-js 1.0.75 → 1.0.77

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.
package/.md CHANGED
@@ -1,7 +1,4 @@
1
- * [CHANGELOG.md]() - [README.md]() - [package.json]()
2
- * [PROMPT.md]()
3
- * [.workspace](`(devtools/Workspace<${ws.getSpecializer()}>)`) - [.js]()
4
-
1
+ * [CHANGELOG.md]() - [README.md]() - [package.json]() - [PROMPT.md]()
5
2
 
6
3
  # cavalion-js
7
4
 
@@ -14,7 +11,7 @@
14
11
  * **[entities](src/:/)** - [entities.js](src/) - [features](src/:/)
15
12
  * [js](src/:/) / [\_js.js](src/js/:) - [extensions.js](src/js/:) - _[global.js](src/js/:)_? - _[define.js](src/js/:)?_
16
13
  - [defineClass.js](src/js/:) - [referenceClass.js](src/js/:)
17
- - [JsObject.js](src/js/:) - [Class.js](src/js/:)
14
+ - **[JsObject.js](src/js/:) - [Class.js](src/js/:) **
18
15
  - [json.js](src/:) - [locale.js](src/:) - [text.js](src/:)
19
16
  - [script.js](src/:) - [relscript.js](src/:)
20
17
  - [stylesheet.js](src/:)
@@ -34,6 +31,7 @@
34
31
  - [Keyboard.js](src/util/:)
35
32
  - [Rest.js](src/util/:)
36
33
  - [Stylesheet.js](src/util/:)
34
+ - [Text.js](src/util/:)
37
35
  - [Xml.js](src/util/:)
38
36
 
39
37
  #
package/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ### 2024/03/24 - 1.0.77
2
+
3
+ *
4
+
5
+ ### 2023/09/30 - 1.0.76
6
+
7
+ * Fixes a solid bug, in _JsObject.prototype.setProperties()_, sure why not?
8
+
1
9
  ### 2023/06/30 - 1.0.75
2
10
 
3
11
  * Introduces locales.mixIn, prefixed.has()
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cavalion-js",
3
- "version": "1.0.75",
3
+ "version": "1.0.77",
4
4
  "description": "Cavalion common JavaScript library",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -41,7 +41,6 @@ define(function(require) {
41
41
  .replace(/ /g, "&nbsp;")
42
42
  .replace(/\n/g, "<br>");
43
43
  parentNode.appendChild(div);
44
-
45
44
  }
46
45
  }
47
46
  }));
@@ -75,7 +75,7 @@ define(function(require) {
75
75
  var props = this.defineProperties();
76
76
  for(var k in values) {
77
77
  var prop = props[k];
78
- if(k) {
78
+ if(prop) {
79
79
  prop.set(this, values[k]);
80
80
  }
81
81
  }
@@ -17,9 +17,7 @@ define(function(require) {
17
17
  }());
18
18
 
19
19
  Error.chain = function(e, cause) {
20
- return mixIn(e, {
21
- cause: cause
22
- });
20
+ return mixIn(e, { cause: cause });
23
21
  };
24
22
 
25
23
  if(Array.prototype.indexOf === undefined) {
@@ -76,6 +74,16 @@ define(function(require) {
76
74
  Array.prototype.remove = remove;
77
75
  }
78
76
  }
77
+ if(Array.prototype.last === undefined) {
78
+ Array.prototype.last = function() {
79
+ return this[this.length - 1];
80
+ };
81
+ }
82
+ if(Array.prototype.first === undefined) {
83
+ Array.prototype.first = function() {
84
+ return this[0];
85
+ };
86
+ }
79
87
 
80
88
  Array.as = function(arrObjOrNull) {
81
89
  if(arrObjOrNull instanceof Array) {
@@ -99,15 +107,21 @@ define(function(require) {
99
107
  before = arr.splice(0, newIndex);
100
108
  return before.concat([item]).concat(arr);
101
109
  };
110
+ Array.fn = {
111
+ truthy(item) { return !!item; },
112
+ falsy(item) { return !item; },
113
+ unique(item, index, array) { return array.indexOf(item) === index; },
114
+ // sort()
115
+ };
102
116
 
103
- // if(Array.prototype.each === undefined) {
104
- // // DUH!!! (2020-01-01)
105
- // Array.prototype.each = Array.prototype.forEach;
106
- // }
107
-
117
+ if (typeof String.prototype.startsWith !== 'function') {
118
+ String.prototype.startsWith = function(s) {
119
+ return this.indexOf(s) === 0;
120
+ };
121
+ }
108
122
  if (typeof String.prototype.endsWith !== 'function') {
109
- String.prototype.endsWith = function(suffix) {
110
- return this.indexOf(suffix, this.length - suffix.length) !== -1;
123
+ String.prototype.endsWith = function(s) {
124
+ return this.indexOf(s, this.length - s.length) !== -1;
111
125
  };
112
126
  }
113
127
 
@@ -368,14 +382,22 @@ define(function(require) {
368
382
  var f = _cf(l, r);
369
383
  return (l * f) / (r * f);
370
384
  };
371
- Math.f = (n) => {
372
- var r = js.sf("%f", n), i, dot = r.indexOf(".");
385
+ Math.f = (n, d) => {
386
+ var r = String(n), i, dot = r.indexOf(".");
387
+
388
+ n = parseFloat(n);
389
+
373
390
  if((i = r.indexOf("0000")) > dot) {
374
391
  return n.toFixed(i - dot - 1);
375
392
  }
376
393
  if((i = r.indexOf("9999")) > dot) {
377
394
  return n.toFixed(i - dot - 1);
378
395
  }
396
+
397
+ if(d) {
398
+ return n.toFixed(d).replace(/0*$/, "").replace(/\.$/, "");
399
+ }
400
+
379
401
  return n;
380
402
  };
381
403
  Math.f_= (value, regexps) => {
@@ -392,11 +414,11 @@ define(function(require) {
392
414
 
393
415
  /*--- */
394
416
 
395
- Date.prototype.getWeekNumber = function(){
396
- var d = new Date(+this);
397
- d.setHours(0, 0, 0);
398
- d.setDate(d.getDate() + 4 - (d.getDay() || 7));
399
- return Math.ceil((((d - new Date(d.getFullYear(), 0, 1))
417
+ Date.getWeekNumber = function(dt){
418
+ dt = new Date(+dt);
419
+ dt.setHours(0, 0, 0);
420
+ dt.setDate(dt.getDate() + 4 - (dt.getDay() || 7));
421
+ return Math.ceil((((dt - new Date(dt.getFullYear(), 0, 1))
400
422
  / 8.64e7) + 1) / 7);
401
423
  };
402
424