@bbn/bbn 1.0.436 → 1.0.438

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 (206) hide show
  1. package/dist/_.js +7 -11
  2. package/dist/bbn.js +1 -1
  3. package/dist/bbn.js.map +1 -1
  4. package/dist/date.d.ts +26 -0
  5. package/dist/date.js +190 -0
  6. package/dist/db.js +107 -124
  7. package/dist/fn/ajax/_addLoader.js +6 -6
  8. package/dist/fn/ajax/_deleteLoader.js +11 -13
  9. package/dist/fn/ajax/abort.js +1 -1
  10. package/dist/fn/ajax/abortURL.js +1 -1
  11. package/dist/fn/ajax/ajax.js +25 -30
  12. package/dist/fn/ajax/callback.js +10 -14
  13. package/dist/fn/ajax/download.js +7 -9
  14. package/dist/fn/ajax/downloadContent.js +5 -6
  15. package/dist/fn/ajax/getLoader.js +1 -1
  16. package/dist/fn/ajax/getRequestId.js +2 -2
  17. package/dist/fn/ajax/link.js +9 -13
  18. package/dist/fn/ajax/post.js +3 -7
  19. package/dist/fn/ajax/postOut.js +2 -4
  20. package/dist/fn/ajax/setNavigationVars.js +5 -7
  21. package/dist/fn/ajax/stream.js +21 -22
  22. package/dist/fn/ajax/treatAjaxArguments.js +3 -3
  23. package/dist/fn/ajax/upload.js +6 -9
  24. package/dist/fn/browser/copy.js +9 -12
  25. package/dist/fn/browser/error.js +2 -2
  26. package/dist/fn/browser/executeSlowly.js +11 -55
  27. package/dist/fn/browser/getBrowserName.js +1 -1
  28. package/dist/fn/browser/getBrowserVersion.js +1 -1
  29. package/dist/fn/browser/getCookie.js +5 -5
  30. package/dist/fn/browser/getDeviceType.js +1 -1
  31. package/dist/fn/browser/getEventData.js +30 -30
  32. package/dist/fn/browser/happy.js +1 -5
  33. package/dist/fn/browser/info.js +1 -5
  34. package/dist/fn/browser/isActiveInterface.js +2 -3
  35. package/dist/fn/browser/isFocused.js +1 -2
  36. package/dist/fn/browser/log.js +8 -12
  37. package/dist/fn/browser/replaceSelection.js +5 -5
  38. package/dist/fn/browser/selectElementText.js +4 -5
  39. package/dist/fn/browser/setCookie.js +3 -3
  40. package/dist/fn/browser/warning.js +2 -2
  41. package/dist/fn/browser/yieldToBrowser.js +7 -43
  42. package/dist/fn/convert/arrayBuffer2String.js +1 -1
  43. package/dist/fn/convert/canvasToImage.js +1 -1
  44. package/dist/fn/convert/colorToHex.js +1 -1
  45. package/dist/fn/convert/fromXml.js +7 -13
  46. package/dist/fn/convert/hex2rgb.js +1 -1
  47. package/dist/fn/convert/imageToCanvas.js +1 -1
  48. package/dist/fn/convert/imgToBase64.js +2 -3
  49. package/dist/fn/convert/toCSV.js +7 -10
  50. package/dist/fn/datetime/calendar.js +4 -5
  51. package/dist/fn/datetime/date.js +1 -1
  52. package/dist/fn/datetime/dateSQL.js +1 -1
  53. package/dist/fn/datetime/daysInMonth.js +1 -1
  54. package/dist/fn/datetime/fdate.js +2 -3
  55. package/dist/fn/datetime/fdatetime.js +2 -3
  56. package/dist/fn/datetime/ftime.js +1 -1
  57. package/dist/fn/datetime/getChrono.js +2 -3
  58. package/dist/fn/datetime/getDay.js +3 -3
  59. package/dist/fn/datetime/startChrono.js +1 -1
  60. package/dist/fn/datetime/stopChrono.js +2 -2
  61. package/dist/fn/datetime/timestamp.js +2 -3
  62. package/dist/fn/default/defaultAjaxAbortFunction.js +1 -2
  63. package/dist/fn/default/defaultAjaxErrorFunction.js +1 -3
  64. package/dist/fn/default/defaultAlertFunction.js +1 -2
  65. package/dist/fn/default/defaultConfirmFunction.js +2 -3
  66. package/dist/fn/default/defaultEndLoadingFunction.js +1 -3
  67. package/dist/fn/default/defaultPostLinkFunction.js +1 -2
  68. package/dist/fn/default/defaultPreLinkFunction.js +1 -3
  69. package/dist/fn/form/addInputs.js +10 -12
  70. package/dist/fn/form/fieldValue.js +1 -1
  71. package/dist/fn/form/formdata.js +24 -24
  72. package/dist/fn/form/objectToFormData.js +5 -8
  73. package/dist/fn/form/submit.js +4 -4
  74. package/dist/fn/html/adjustHeight.js +1 -1
  75. package/dist/fn/html/adjustSize.js +5 -5
  76. package/dist/fn/html/adjustWidth.js +1 -1
  77. package/dist/fn/html/getAllTags.js +1 -1
  78. package/dist/fn/html/getAncestors.js +2 -3
  79. package/dist/fn/html/getAttributes.js +2 -2
  80. package/dist/fn/html/getHTMLOfSelection.js +4 -4
  81. package/dist/fn/html/getHtml.js +2 -3
  82. package/dist/fn/html/getIndex.js +3 -4
  83. package/dist/fn/html/getPath.js +12 -17
  84. package/dist/fn/html/html2text.js +1 -1
  85. package/dist/fn/html/isInViewport.js +4 -5
  86. package/dist/fn/html/isInside.js +5 -5
  87. package/dist/fn/html/makeReactive.js +22 -26
  88. package/dist/fn/init.js +18 -18
  89. package/dist/fn/loop/each.js +2 -2
  90. package/dist/fn/loop/fori.js +3 -5
  91. package/dist/fn/loop/forir.js +3 -5
  92. package/dist/fn/loop/iterate.js +3 -6
  93. package/dist/fn/loop/riterate.js +1 -2
  94. package/dist/fn/misc/analyzeFunction.js +36 -36
  95. package/dist/fn/misc/money.js +4 -4
  96. package/dist/fn/misc/translate.js +2 -2
  97. package/dist/fn/object/_compareValues.js +2 -3
  98. package/dist/fn/object/_filter.js +7 -10
  99. package/dist/fn/object/arrayFromProp.js +2 -2
  100. package/dist/fn/object/checkProps.js +1 -2
  101. package/dist/fn/object/checkPropsDetails.js +8 -9
  102. package/dist/fn/object/checkPropsOrDie.js +2 -3
  103. package/dist/fn/object/circularReplacer.js +2 -2
  104. package/dist/fn/object/clone.js +2 -2
  105. package/dist/fn/object/compareConditions.js +6 -6
  106. package/dist/fn/object/count.js +1 -3
  107. package/dist/fn/object/createObject.js +3 -16
  108. package/dist/fn/object/deepPath.js +6 -7
  109. package/dist/fn/object/diffObj.js +11 -13
  110. package/dist/fn/object/extend.js +10 -14
  111. package/dist/fn/object/extendOut.js +4 -9
  112. package/dist/fn/object/filter.js +6 -12
  113. package/dist/fn/object/filterToConditions.js +6 -7
  114. package/dist/fn/object/findAll.js +4 -5
  115. package/dist/fn/object/getField.js +2 -8
  116. package/dist/fn/object/getFieldValues.js +2 -2
  117. package/dist/fn/object/getProperty.js +5 -9
  118. package/dist/fn/object/getRow.js +2 -7
  119. package/dist/fn/object/getSortingMoves.js +28 -28
  120. package/dist/fn/object/isWritable.js +1 -1
  121. package/dist/fn/object/map.js +2 -3
  122. package/dist/fn/object/move.js +1 -1
  123. package/dist/fn/object/multiorder.js +5 -6
  124. package/dist/fn/object/mutateArray.js +8 -9
  125. package/dist/fn/object/mutateObject.js +3 -3
  126. package/dist/fn/object/order.js +1 -2
  127. package/dist/fn/object/removeEmpty.js +2 -2
  128. package/dist/fn/object/removePrivateProp.js +2 -3
  129. package/dist/fn/object/search.js +13 -17
  130. package/dist/fn/object/setProp.js +1 -3
  131. package/dist/fn/object/setProperty.js +8 -8
  132. package/dist/fn/object/shortenObj.js +3 -4
  133. package/dist/fn/object/shuffle.js +2 -3
  134. package/dist/fn/object/sum.js +3 -3
  135. package/dist/fn/object/unique.js +1 -1
  136. package/dist/fn/phone/fphone.js +22 -22
  137. package/dist/fn/string/baseName.js +3 -3
  138. package/dist/fn/string/correctCase.js +1 -1
  139. package/dist/fn/string/crc32.js +7 -7
  140. package/dist/fn/string/data2Html.js +4 -5
  141. package/dist/fn/string/dirName.js +1 -1
  142. package/dist/fn/string/escapeUrl.js +6 -6
  143. package/dist/fn/string/fileExt.js +1 -1
  144. package/dist/fn/string/firstVarElement.js +2 -2
  145. package/dist/fn/string/format.js +4 -4
  146. package/dist/fn/string/formatBytes.js +2 -3
  147. package/dist/fn/string/hash.js +4 -8
  148. package/dist/fn/string/randomString.js +5 -5
  149. package/dist/fn/string/replaceAll.js +1 -2
  150. package/dist/fn/string/sanitize.js +6 -7
  151. package/dist/fn/string/simpleHash.js +2 -2
  152. package/dist/fn/string/simpleHash1.js +3 -3
  153. package/dist/fn/string/simpleHash2.js +3 -3
  154. package/dist/fn/string/treatForHash.js +6 -10
  155. package/dist/fn/string/trim.js +1 -2
  156. package/dist/fn/string/uniqString.js +7 -14
  157. package/dist/fn/style/addColors.js +14 -14
  158. package/dist/fn/style/addStyle.js +1 -1
  159. package/dist/fn/style/animateCss.js +1 -1
  160. package/dist/fn/style/center.js +1 -1
  161. package/dist/fn/style/cssExists.js +5 -5
  162. package/dist/fn/style/getCssVar.js +1 -1
  163. package/dist/fn/style/getScrollBarSize.js +5 -5
  164. package/dist/fn/style/lightenDarkenHex.js +2 -2
  165. package/dist/fn/style/outerHeight.js +2 -2
  166. package/dist/fn/style/outerWidth.js +2 -2
  167. package/dist/fn/style/resize.js +14 -14
  168. package/dist/fn/type/checkType.js +5 -9
  169. package/dist/fn/type/isArray.js +2 -7
  170. package/dist/fn/type/isBlob.js +2 -7
  171. package/dist/fn/type/isBoolean.js +2 -7
  172. package/dist/fn/type/isCanvas.js +2 -7
  173. package/dist/fn/type/isColor.js +2 -7
  174. package/dist/fn/type/isComment.js +2 -7
  175. package/dist/fn/type/isCp.js +3 -8
  176. package/dist/fn/type/isDataURL.js +2 -7
  177. package/dist/fn/type/isDate.js +2 -7
  178. package/dist/fn/type/isDimension.js +2 -7
  179. package/dist/fn/type/isDom.js +2 -7
  180. package/dist/fn/type/isEmail.js +3 -8
  181. package/dist/fn/type/isEvent.js +2 -7
  182. package/dist/fn/type/isFunction.js +2 -7
  183. package/dist/fn/type/isHostname.js +2 -7
  184. package/dist/fn/type/isIP.js +2 -7
  185. package/dist/fn/type/isInt.js +2 -7
  186. package/dist/fn/type/isIterable.js +2 -7
  187. package/dist/fn/type/isNotObject.js +2 -7
  188. package/dist/fn/type/isNull.js +2 -7
  189. package/dist/fn/type/isNumber.js +2 -7
  190. package/dist/fn/type/isObject.js +2 -7
  191. package/dist/fn/type/isPercent.js +2 -7
  192. package/dist/fn/type/isPrimitive.js +2 -7
  193. package/dist/fn/type/isPromise.js +2 -7
  194. package/dist/fn/type/isPropSize.js +2 -2
  195. package/dist/fn/type/isSQLDate.js +2 -7
  196. package/dist/fn/type/isSame.js +12 -12
  197. package/dist/fn/type/isString.js +2 -7
  198. package/dist/fn/type/isSymbol.js +2 -7
  199. package/dist/fn/type/isURL.js +2 -7
  200. package/dist/fn/type/isUid.js +2 -7
  201. package/dist/fn/type/isValidDimension.js +2 -2
  202. package/dist/fn/type/isValidName.js +2 -7
  203. package/dist/fn/type/isVue.js +4 -11
  204. package/dist/fn.js +247 -247
  205. package/dist/index.js +9 -7
  206. package/package.json +1 -1
@@ -20,8 +20,8 @@ import numProperties from './numProperties.js';
20
20
  export default function removeEmpty(arr) {
21
21
  var tmp = [];
22
22
  if (isArray(arr)) {
23
- for (var i = 0; i < arr.length; i++) {
24
- var ok = false;
23
+ for (let i = 0; i < arr.length; i++) {
24
+ let ok = false;
25
25
  if (arr[i]) {
26
26
  if (isArray(arr[i])) {
27
27
  if (arr[i].length) {
@@ -21,9 +21,8 @@ import substr from '../string/substr.js';
21
21
  * @param {Boolean} deep If true the function will be reapplied on object properties
22
22
  * @returns {Object} A new object without only the _public_ properties.
23
23
  */
24
- export default function removePrivateProp(obj, deep) {
25
- if (deep === void 0) { deep = false; }
26
- var r = null;
24
+ export default function removePrivateProp(obj, deep = false) {
25
+ let r = null;
27
26
  if (typeof obj === 'object') {
28
27
  r = {};
29
28
  for (var n in obj) {
@@ -101,23 +101,19 @@ import isArray from '../type/isArray.js';
101
101
  * @param {Number} startFrom The index from which the search should start
102
102
  * @returns {Number} The index if found, otherwise -1
103
103
  */
104
- export default function search(arr, prop, val, operator, startFrom, backward) {
105
- if (val === void 0) { val = null; }
106
- if (operator === void 0) { operator = '='; }
107
- if (startFrom === void 0) { startFrom = 0; }
108
- if (backward === void 0) { backward = false; }
104
+ export default function search(arr, prop, val = null, operator = '=', startFrom = 0, backward = false) {
109
105
  if (!isIterable(arr)) {
110
106
  throw new Error(bbn._('The first argument for a search should be iterable') + ' ' + typeof arr + ' ' + bbn._('given'));
111
107
  }
112
108
  if (!arr.length) {
113
109
  return -1;
114
110
  }
115
- var filter;
116
- var isFn = false;
117
- var fn;
111
+ let filter;
112
+ let isFn = false;
113
+ let fn;
118
114
  if (!prop) {
119
115
  isFn = true;
120
- fn = function (a) {
116
+ fn = a => {
121
117
  return compareConditions({ value: a }, filterToConditions({
122
118
  logic: 'AND',
123
119
  conditions: [
@@ -156,8 +152,8 @@ export default function search(arr, prop, val, operator, startFrom, backward) {
156
152
  };
157
153
  }
158
154
  else if (!('conditions' in prop)) {
159
- var conditions = [];
160
- for (var p in prop) {
155
+ const conditions = [];
156
+ for (let p in prop) {
161
157
  conditions.push({
162
158
  field: p,
163
159
  value: prop[p],
@@ -165,7 +161,7 @@ export default function search(arr, prop, val, operator, startFrom, backward) {
165
161
  });
166
162
  }
167
163
  filter = {
168
- conditions: conditions,
164
+ conditions,
169
165
  logic: 'AND'
170
166
  };
171
167
  }
@@ -180,17 +176,17 @@ export default function search(arr, prop, val, operator, startFrom, backward) {
180
176
  };
181
177
  }
182
178
  }
183
- var res = -1;
179
+ let res = -1;
184
180
  if (isFn || filter) {
185
181
  if (typeof startFrom !== 'number') {
186
182
  startFrom = backward ? arr.length - 1 : 0;
187
183
  }
188
184
  if (!fn) {
189
- var subfilter_1 = filterToConditions(filter);
190
- fn = function (ele) { return compareConditions(ele, subfilter_1); };
185
+ const subfilter = filterToConditions(filter);
186
+ fn = (ele) => compareConditions(ele, subfilter);
191
187
  }
192
188
  if (backward) {
193
- for (var i = startFrom; i >= 0; i--) {
189
+ for (let i = startFrom; i >= 0; i--) {
194
190
  bbn.env._enumerated.push(true);
195
191
  if (fn(arr[i])) {
196
192
  bbn.env._enumerated.pop();
@@ -201,7 +197,7 @@ export default function search(arr, prop, val, operator, startFrom, backward) {
201
197
  }
202
198
  }
203
199
  else {
204
- for (var i = startFrom; i < arr.length; i++) {
200
+ for (let i = startFrom; i < arr.length; i++) {
205
201
  bbn.env._enumerated.push(true);
206
202
  if (fn(arr[i])) {
207
203
  bbn.env._enumerated.pop();
@@ -7,9 +7,7 @@
7
7
  * @param {Boolean} writable
8
8
  * @param {Boolean} configurable
9
9
  */
10
- export default function setProp(obj, prop, value, writable, configurable) {
11
- if (writable === void 0) { writable = true; }
12
- if (configurable === void 0) { configurable = true; }
10
+ export default function setProp(obj, prop, value, writable = true, configurable = true) {
13
11
  Object.defineProperty(obj, prop, {
14
12
  value: value,
15
13
  writable: writable,
@@ -29,20 +29,20 @@ import each from '../loop/each.js';
29
29
  */
30
30
  export default function setProperty(obj, prop, value, force) {
31
31
  if (typeof obj === 'object' && typeof prop === 'string') {
32
- var o_1 = obj;
33
- var bits_1 = prop.split('.');
34
- each(bits_1, function (v, i) {
35
- if (!o_1) {
32
+ let o = obj;
33
+ const bits = prop.split('.');
34
+ each(bits, (v, i) => {
35
+ if (!o) {
36
36
  if (!force) {
37
37
  throw new Error(bbn._('The object is invalid'));
38
38
  }
39
- o_1 = {};
39
+ o = {};
40
40
  }
41
- if (bits_1.length - 1 === i) {
42
- o_1[v] = value;
41
+ if (bits.length - 1 === i) {
42
+ o[v] = value;
43
43
  }
44
44
  else {
45
- o_1 = o_1[v];
45
+ o = o[v];
46
46
  }
47
47
  });
48
48
  }
@@ -25,10 +25,9 @@ import shorten from '../string/shorten.js';
25
25
  * @param {Number} [max=100]
26
26
  * @returns {(Object|Array)} The same object, modified
27
27
  */
28
- export default function shortenObj(obj, max) {
29
- if (max === void 0) { max = 100; }
30
- var o = clone(obj);
31
- each(o, function (a, n) {
28
+ export default function shortenObj(obj, max = 100) {
29
+ let o = clone(obj);
30
+ each(o, (a, n) => {
32
31
  if (isString(a) && a.length > max) {
33
32
  o[n] = shorten(a, max);
34
33
  }
@@ -1,13 +1,12 @@
1
1
  export default function shuffle(array) {
2
- var _a;
3
- var currentIndex = array.length, randomIndex;
2
+ let currentIndex = array.length, randomIndex;
4
3
  // While there remain elements to shuffle.
5
4
  while (currentIndex != 0) {
6
5
  // Pick a remaining element.
7
6
  randomIndex = Math.floor(Math.random() * currentIndex);
8
7
  currentIndex--;
9
8
  // And swap it with the current element.
10
- _a = [array[randomIndex], array[currentIndex]], array[currentIndex] = _a[0], array[randomIndex] = _a[1];
9
+ [array[currentIndex], array[randomIndex]] = [array[randomIndex], array[currentIndex]];
11
10
  }
12
11
  return array;
13
12
  }
@@ -45,9 +45,9 @@ import filter from './filter.js';
45
45
  * @returns {Number} The sum
46
46
  */
47
47
  export default function sum(arr, numberProp, prop, val, operator) {
48
- var r = 0;
49
- each(filter(arr, prop, val, operator), function (a) {
50
- var tmp = typeof numberProp === 'function' ? numberProp(a) : a[numberProp];
48
+ let r = 0;
49
+ each(filter(arr, prop, val, operator), (a) => {
50
+ let tmp = typeof numberProp === 'function' ? numberProp(a) : a[numberProp];
51
51
  if (tmp) {
52
52
  r += parseFloat(tmp) || 0;
53
53
  }
@@ -15,6 +15,6 @@
15
15
  * @returns {Array}
16
16
  */
17
17
  export default function unique(arr) {
18
- return arr.filter(function (el, index, ar) { return index === ar.indexOf(el); });
18
+ return arr.filter((el, index, ar) => index === ar.indexOf(el));
19
19
  }
20
20
  ;
@@ -7,41 +7,41 @@ export default function fphone(st) {
7
7
  st = st.toString();
8
8
  }
9
9
  if (isString(st)) {
10
- var phoneCodes = ((_a = bbn.var) === null || _a === void 0 ? void 0 : _a.phoneCodes) || [];
11
- var res = '';
12
- var prefix_1 = '';
13
- var mask_1 = '';
10
+ const phoneCodes = ((_a = bbn.var) === null || _a === void 0 ? void 0 : _a.phoneCodes) || [];
11
+ let res = '';
12
+ let prefix = '';
13
+ let mask = '';
14
14
  if (phoneCodes.length) {
15
15
  // Get phone prefix and mask
16
- each(phoneCodes, function (c) {
17
- if (st.startsWith(c.prefix) && (c.prefix.length > prefix_1.length)) {
18
- prefix_1 = c.prefix;
19
- mask_1 = c.mask || '';
16
+ each(phoneCodes, c => {
17
+ if (st.startsWith(c.prefix) && (c.prefix.length > prefix.length)) {
18
+ prefix = c.prefix;
19
+ mask = c.mask || '';
20
20
  }
21
21
  });
22
22
  }
23
- if (!mask_1.length) {
23
+ if (!mask.length) {
24
24
  if (st.startsWith('+')) {
25
- if (!prefix_1.length) {
26
- prefix_1 = st.substr(0, 3);
25
+ if (!prefix.length) {
26
+ prefix = st.substr(0, 3);
27
27
  }
28
- var tmpSt = st.slice(prefix_1.length);
29
- for (var i = 0; i < tmpSt.length; i++) {
28
+ const tmpSt = st.slice(prefix.length);
29
+ for (let i = 0; i < tmpSt.length; i++) {
30
30
  if (((i + 1) <= tmpSt.length) && ((i % 2) === 0)) {
31
- mask_1 += '0' + (tmpSt[i + 1] ? '0' : '') + ' ';
31
+ mask += '0' + (tmpSt[i + 1] ? '0' : '') + ' ';
32
32
  }
33
33
  }
34
- mask_1 = mask_1.trim();
34
+ mask = mask.trim();
35
35
  }
36
36
  }
37
- if (mask_1.length) {
38
- if (prefix_1.length) {
39
- res = prefix_1 + ' ';
40
- st = st.slice(prefix_1.length);
37
+ if (mask.length) {
38
+ if (prefix.length) {
39
+ res = prefix + ' ';
40
+ st = st.slice(prefix.length);
41
41
  }
42
- var i_1 = 0;
43
- res += mask_1.replace(/[0-9]/g, function () {
44
- return st[i_1++] || '';
42
+ let i = 0;
43
+ res += mask.replace(/[0-9]/g, () => {
44
+ return st[i++] || '';
45
45
  });
46
46
  return res;
47
47
  }
@@ -24,12 +24,12 @@ import substr from './substr.js';
24
24
  */
25
25
  export default function baseName(path, suffix) {
26
26
  if (path && isString(path)) {
27
- var bits = path.split("/");
28
- var res = bits.pop();
27
+ let bits = path.split("/");
28
+ let res = bits.pop();
29
29
  if (!suffix) {
30
30
  return res;
31
31
  }
32
- var len = suffix.length;
32
+ let len = suffix.length;
33
33
  if (res && substr(res, -len) === suffix) {
34
34
  return substr(res, 0, res.length - len);
35
35
  }
@@ -15,6 +15,6 @@
15
15
  * @returns {String}
16
16
  */
17
17
  export default function correctCase(str) {
18
- return str.replace(/[A-z]{1}/, function (c) { return c.toUpperCase(); });
18
+ return str.replace(/[A-z]{1}/, (c) => c.toUpperCase());
19
19
  }
20
20
  ;
@@ -1,18 +1,18 @@
1
1
  /**
2
2
  * CRC32 implementation.
3
3
  */
4
- var crc32Table = [];
5
- for (var i = 0; i < 256; i++) {
6
- var c = i;
7
- for (var j = 0; j < 8; j++) {
4
+ const crc32Table = [];
5
+ for (let i = 0; i < 256; i++) {
6
+ let c = i;
7
+ for (let j = 0; j < 8; j++) {
8
8
  c = c & 1 ? 0xedb88320 ^ (c >>> 1) : c >>> 1;
9
9
  }
10
10
  crc32Table.push(c);
11
11
  }
12
12
  export default function crc32(str) {
13
- var crc = 0 ^ -1;
14
- for (var i = 0; i < str.length; i++) {
15
- var charCode = str.charCodeAt(i);
13
+ let crc = 0 ^ -1;
14
+ for (let i = 0; i < str.length; i++) {
15
+ const charCode = str.charCodeAt(i);
16
16
  crc = (crc >>> 8) ^ crc32Table[(crc ^ charCode) & 0xff];
17
17
  }
18
18
  return (crc ^ -1) >>> 0; // Make sure the result is a 32-bit positive integer
@@ -16,11 +16,10 @@ import isObject from '../type/isObject.js';
16
16
  * @param {String} [clsName]
17
17
  * @returns {String}
18
18
  */
19
- export default function data2Html(data, clsName) {
20
- if (clsName === void 0) { clsName = ''; }
21
- var isAssoc = !isArray(data);
22
- var st = '<ul class="bbn-bottom-xspadding ' + (clsName || 'bbn-ul') + '">';
23
- for (var n in data) {
19
+ export default function data2Html(data, clsName = '') {
20
+ const isAssoc = !isArray(data);
21
+ let st = '<ul class="bbn-bottom-xspadding ' + (clsName || 'bbn-ul') + '">';
22
+ for (let n in data) {
24
23
  st += '<li>';
25
24
  if (isAssoc) {
26
25
  st += '<em>' + n + '</em>: ';
@@ -20,7 +20,7 @@ export default function dirName(path) {
20
20
  while (substr(path, path.length - 1) === "/") {
21
21
  path = substr(path, 0, path.length - 1);
22
22
  }
23
- var pos = path.lastIndexOf("/");
23
+ let pos = path.lastIndexOf("/");
24
24
  if (pos > 0) {
25
25
  return substr(path, 0, pos);
26
26
  }
@@ -10,7 +10,7 @@ import isString from '../type/isString.js';
10
10
  * @returns
11
11
  */
12
12
  export default function escapeUrl(url, params) {
13
- var st = "";
13
+ let st = "";
14
14
  if (url.match("^(http|https)://")) {
15
15
  st += "http";
16
16
  url = url.substring(4);
@@ -21,14 +21,14 @@ export default function escapeUrl(url, params) {
21
21
  st += "://";
22
22
  url = url.substring(3);
23
23
  }
24
- each(dirName(url).split("/"), function (a) {
24
+ each(dirName(url).split("/"), (a) => {
25
25
  st += encodeURIComponent(a) + "/";
26
26
  });
27
- var base = baseName(url);
28
- var sep = "?";
29
- var existingParams = "";
27
+ let base = baseName(url);
28
+ let sep = "?";
29
+ let existingParams = "";
30
30
  if (base.indexOf(sep)) {
31
- var tmp = base.split("?");
31
+ let tmp = base.split("?");
32
32
  sep = "&";
33
33
  existingParams = "?" + tmp[1];
34
34
  base = tmp[0];
@@ -37,7 +37,7 @@ import isString from '../type/isString.js';
37
37
  */
38
38
  export default function fileExt(filename) {
39
39
  if (filename && isString(filename)) {
40
- var bits = filename.split(".");
40
+ let bits = filename.split(".");
41
41
  if (bits[0] && bits.length > 1) {
42
42
  return bits[bits.length - 1].toLowerCase();
43
43
  }
@@ -4,8 +4,8 @@
4
4
  * @returns {String}
5
5
  */
6
6
  export default function firstVarElement(varName) {
7
- var firstBracket = varName.indexOf('[');
8
- var firstDot = varName.indexOf('.');
7
+ const firstBracket = varName.indexOf('[');
8
+ const firstDot = varName.indexOf('.');
9
9
  if (firstBracket === -1 && firstDot === -1) {
10
10
  return varName;
11
11
  }
@@ -1,10 +1,10 @@
1
1
  import checkType from '../type/checkType.js';
2
2
  export default function format(str) {
3
- var args = Array.prototype.slice.call(arguments, 1);
3
+ let args = Array.prototype.slice.call(arguments, 1);
4
4
  if (args.length) {
5
- var i_1 = 0;
6
- return str.replace(/\%([d|s])/g, function (match, type) {
7
- var tmp = args[i_1++];
5
+ let i = 0;
6
+ return str.replace(/\%([d|s])/g, (match, type) => {
7
+ let tmp = args[i++];
8
8
  checkType(tmp, type === 'd' ? 'number' : 'string', bbn._("The value doesn't correspond to the format"));
9
9
  return tmp;
10
10
  });
@@ -10,12 +10,11 @@
10
10
  * @memberof bbn.fn
11
11
  * @returns {String}
12
12
  */
13
- export default function formatBytes(bytes, decimals) {
14
- if (decimals === void 0) { decimals = 2; }
13
+ export default function formatBytes(bytes, decimals = 2) {
15
14
  if (!bytes) {
16
15
  return '0 B';
17
16
  }
18
- var k = 1024, s = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'], i = Math.floor(Math.log(bytes) / Math.log(k));
17
+ const k = 1024, s = ['B', 'KB', 'MB', 'GB', 'TB', 'PB', 'EB', 'ZB', 'YB'], i = Math.floor(Math.log(bytes) / Math.log(k));
19
18
  return parseFloat((bytes / Math.pow(k, i)).toFixed(decimals < 0 ? 0 : decimals)) + ' ' + s[i];
20
19
  }
21
20
  ;
@@ -5,19 +5,15 @@ import treatForHash from './treatForHash.js';
5
5
  * @param {[*]} args
6
6
  * @returns {String}
7
7
  */
8
- export default function hash() {
9
- var args = [];
10
- for (var _i = 0; _i < arguments.length; _i++) {
11
- args[_i] = arguments[_i];
12
- }
8
+ export default function hash(...args) {
13
9
  //log(obj);
14
- var st = "";
15
- var depth = null;
10
+ let st = "";
11
+ let depth = null;
16
12
  if ((args.length === 2) && (typeof args[1] === 'number')) {
17
13
  depth = args[1];
18
14
  args = [args[0]];
19
15
  }
20
- for (var i in args) {
16
+ for (let i in args) {
21
17
  st += treatForHash(args[i], depth, 0, null, treatForHash);
22
18
  }
23
19
  return simpleHash(st);
@@ -26,9 +26,9 @@ import randomInt from '../misc/randomInt.js';
26
26
  * @returns {String}
27
27
  */
28
28
  export default function randomString(min, max, types) {
29
- var length;
30
- var type;
31
- var chars = {
29
+ let length;
30
+ let type;
31
+ let chars = {
32
32
  n: "0123456789",
33
33
  l: "abcdefghijklmnopqrstuvwxyz",
34
34
  u: "ABCDEFGHIJKLMNOPQRSTUVWXYZ",
@@ -54,8 +54,8 @@ export default function randomString(min, max, types) {
54
54
  else if (min) {
55
55
  length = min;
56
56
  }
57
- var result = "";
58
- for (var i = 0; i < length; i++) {
57
+ let result = "";
58
+ for (let i = 0; i < length; i++) {
59
59
  // Not a number for the first char
60
60
  if (i === 0) {
61
61
  if (types !== "n") {
@@ -21,8 +21,7 @@ import escapeRegExp from './escapeRegExp.js';
21
21
  * @param {String} flags
22
22
  * @returns {String}
23
23
  */
24
- export default function replaceAll(find, replace, str, flags) {
25
- if (flags === void 0) { flags = ""; }
24
+ export default function replaceAll(find, replace, str, flags = "") {
26
25
  return str
27
26
  .toString()
28
27
  .replace(isObject(find) ? find : new RegExp(escapeRegExp(find), "g" + flags), replace);
@@ -15,19 +15,18 @@ import trim from './trim.js';
15
15
  * @memberof bbn.fn
16
16
  * @returns {String} str
17
17
  */
18
- export default function sanitize(str, separator) {
19
- if (separator === void 0) { separator = "_"; }
20
- var escaped = ["[", "]", "{", "}", "(", ")", "-", "+", "*", "/"];
21
- var exp = "[";
22
- for (var i = 0; i < separator.length; i++) {
18
+ export default function sanitize(str, separator = "_") {
19
+ let escaped = ["[", "]", "{", "}", "(", ")", "-", "+", "*", "/"];
20
+ let exp = "[";
21
+ for (let i = 0; i < separator.length; i++) {
23
22
  if (escaped.includes(separator[i])) {
24
23
  exp += "\\";
25
24
  }
26
25
  exp += separator[i];
27
26
  }
28
27
  exp += "]+";
29
- var re = new RegExp(exp, "g");
30
- var res = removeAccents(str)
28
+ let re = new RegExp(exp, "g");
29
+ let res = removeAccents(str)
31
30
  .replace(/[^a-z0-9]/gi, separator)
32
31
  .replace(re, separator);
33
32
  return trim(res, separator);
@@ -1,8 +1,8 @@
1
1
  import simpleHash1 from './simpleHash1.js';
2
2
  import simpleHash2 from './simpleHash2.js';
3
3
  export default function simpleHash(str) {
4
- var part1 = simpleHash1(str).padStart(8, '0');
5
- var part2 = simpleHash2(str).padStart(8, '0');
4
+ const part1 = simpleHash1(str).padStart(8, '0');
5
+ const part2 = simpleHash2(str).padStart(8, '0');
6
6
  return part1 + part2;
7
7
  }
8
8
  ;
@@ -1,7 +1,7 @@
1
1
  export default function simpleHash1(str) {
2
- var hash = 0;
3
- for (var i = 0; i < str.length; i++) {
4
- var char = str.charCodeAt(i);
2
+ let hash = 0;
3
+ for (let i = 0; i < str.length; i++) {
4
+ const char = str.charCodeAt(i);
5
5
  hash = (hash << 5) - hash + char;
6
6
  hash |= 0; // Convert to 32-bit integer
7
7
  }
@@ -1,7 +1,7 @@
1
1
  export default function simpleHash2(str) {
2
- var hash = 0;
3
- for (var i = 0; i < str.length; i++) {
4
- var char = str.charCodeAt(i);
2
+ let hash = 0;
3
+ for (let i = 0; i < str.length; i++) {
4
+ const char = str.charCodeAt(i);
5
5
  hash = char + (hash << 6) + (hash << 16) - hash;
6
6
  hash |= 0; // Convert to 32-bit integer
7
7
  }
@@ -10,11 +10,7 @@ import isCp from '../type/isCp.js';
10
10
  * @param {WeakSet} [visited=null]
11
11
  * @returns {String}
12
12
  */
13
- export default function treatForHash(value, depth, level, visited, fn) {
14
- if (depth === void 0) { depth = null; }
15
- if (level === void 0) { level = 0; }
16
- if (visited === void 0) { visited = null; }
17
- if (fn === void 0) { fn = null; }
13
+ export default function treatForHash(value, depth = null, level = 0, visited = null, fn = null) {
18
14
  if (!level && !visited) {
19
15
  visited = new WeakSet();
20
16
  }
@@ -65,8 +61,8 @@ export default function treatForHash(value, depth, level, visited, fn) {
65
61
  }
66
62
  else {
67
63
  visited.add(value);
68
- var st = '';
69
- for (var i = 0; i < value.length; i++) {
64
+ let st = '';
65
+ for (let i = 0; i < value.length; i++) {
70
66
  st += "__BBN_ITEM" + i.toString() + "__" + fn(value[i], depth, level + 1, visited, fn);
71
67
  }
72
68
  value = "__BBN_ARRAY__" + st;
@@ -78,9 +74,9 @@ export default function treatForHash(value, depth, level, visited, fn) {
78
74
  }
79
75
  else {
80
76
  visited.add(value);
81
- var st = '';
82
- for (var n in value) {
83
- var idx = n;
77
+ let st = '';
78
+ for (let n in value) {
79
+ let idx = n;
84
80
  if (typeof idx !== 'string') {
85
81
  idx = fn(idx, fn, 1, 1);
86
82
  }
@@ -1,6 +1,5 @@
1
1
  import substr from './substr.js';
2
- export default function trim(str, hair) {
3
- if (hair === void 0) { hair = ' '; }
2
+ export default function trim(str, hair = ' ') {
4
3
  if (hair === ' ') {
5
4
  return str.trim();
6
5
  }
@@ -17,13 +17,9 @@ import md5 from './md5.js';
17
17
  * @memberof bbn.fn
18
18
  * @returns {String} The unique string in md5 format
19
19
  */
20
- export default function uniqString() {
21
- var args = [];
22
- for (var _i = 0; _i < arguments.length; _i++) {
23
- args[_i] = arguments[_i];
24
- }
20
+ export default function uniqString(...args) {
25
21
  var st = "";
26
- var _loop_1 = function () {
22
+ for (var i = 0; i < args.length; i++) {
27
23
  if (!args[i]) {
28
24
  st += "__bbn_empty__";
29
25
  }
@@ -33,12 +29,12 @@ export default function uniqString() {
33
29
  }
34
30
  else {
35
31
  // An object with the same properties, even in different order, should produce the same answer
36
- var tmp_1 = {};
37
- var ks = Object.keys(args[i]).sort();
38
- each(ks, function (k) {
39
- tmp_1[k] = args[i][k];
32
+ let tmp = {};
33
+ let ks = Object.keys(args[i]).sort();
34
+ each(ks, (k) => {
35
+ tmp[k] = args[i][k];
40
36
  });
41
- st += JSON.stringify(tmp_1);
37
+ st += JSON.stringify(tmp);
42
38
  }
43
39
  }
44
40
  else if (typeof args[i] !== "string") {
@@ -47,9 +43,6 @@ export default function uniqString() {
47
43
  else {
48
44
  st += args[i];
49
45
  }
50
- };
51
- for (var i = 0; i < args.length; i++) {
52
- _loop_1();
53
46
  }
54
47
  return md5(st);
55
48
  }