tiny-essentials 1.1.1 → 1.2.0
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/README.md +3 -1
- package/dist/TinyBasicsEs.js +2784 -0
- package/dist/TinyBasicsEs.min.js +2 -0
- package/dist/TinyBasicsEs.min.js.LICENSE.txt +8 -0
- package/dist/TinyCertCrypto.js +76229 -0
- package/dist/TinyCertCrypto.min.js +2 -0
- package/dist/TinyCertCrypto.min.js.LICENSE.txt +10 -0
- package/dist/TinyCrypto.js +48115 -0
- package/dist/TinyCrypto.min.js +2 -0
- package/dist/TinyCrypto.min.js.LICENSE.txt +10 -0
- package/dist/TinyEssentials.js +77599 -0
- package/dist/TinyEssentials.min.js +2 -1
- package/dist/TinyEssentials.min.js.LICENSE.txt +10 -0
- package/dist/TinyLevelUp.js +173 -0
- package/dist/TinyLevelUp.min.js +1 -0
- package/dist/v1/basics/index.cjs +27 -0
- package/dist/v1/basics/index.d.mts +17 -0
- package/dist/v1/basics/index.mjs +7 -0
- package/dist/v1/basics/objFilter.cjs +3 -1
- package/dist/v1/basics/objFilter.mjs +1 -0
- package/dist/v1/build/TinyCertCrypto.cjs +7 -0
- package/dist/v1/build/TinyCertCrypto.d.mts +2 -0
- package/dist/v1/build/TinyCertCrypto.mjs +2 -0
- package/dist/v1/build/TinyCrypto.cjs +7 -0
- package/dist/v1/build/TinyCrypto.d.mts +2 -0
- package/dist/v1/build/TinyCrypto.mjs +2 -0
- package/dist/v1/build/TinyLevelUp.cjs +7 -0
- package/dist/v1/build/TinyLevelUp.d.mts +2 -0
- package/dist/v1/build/TinyLevelUp.mjs +2 -0
- package/dist/v1/index.cjs +2 -0
- package/dist/v1/index.d.mts +2 -1
- package/dist/v1/index.mjs +2 -1
- package/dist/v1/libs/TinyCertCrypto.cjs +514 -0
- package/dist/v1/libs/TinyCertCrypto.d.mts +191 -0
- package/dist/v1/libs/TinyCertCrypto.mjs +450 -0
- package/dist/v1/libs/TinyCrypto.cjs +21 -12
- package/dist/v1/libs/TinyCrypto.d.mts +1 -0
- package/dist/v1/libs/TinyCrypto.mjs +10 -1
- package/docs/README.md +2 -0
- package/docs/libs/TinyCertCrypto.md +202 -0
- package/package.json +11 -6
- package/webpack.config.mjs +69 -0
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/*!
|
|
2
|
+
* The buffer module from node.js, for the browser.
|
|
3
|
+
*
|
|
4
|
+
* @author Feross Aboukhadijeh <https://feross.org>
|
|
5
|
+
* @license MIT
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
9
|
+
|
|
10
|
+
/*! safe-buffer. MIT License. Feross Aboukhadijeh <https://feross.org/opensource> */
|
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
/******/ (() => { // webpackBootstrap
|
|
2
|
+
/******/ "use strict";
|
|
3
|
+
/******/ // The require scope
|
|
4
|
+
/******/ var __webpack_require__ = {};
|
|
5
|
+
/******/
|
|
6
|
+
/************************************************************************/
|
|
7
|
+
/******/ /* webpack/runtime/define property getters */
|
|
8
|
+
/******/ (() => {
|
|
9
|
+
/******/ // define getter functions for harmony exports
|
|
10
|
+
/******/ __webpack_require__.d = (exports, definition) => {
|
|
11
|
+
/******/ for(var key in definition) {
|
|
12
|
+
/******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
|
|
13
|
+
/******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
|
|
14
|
+
/******/ }
|
|
15
|
+
/******/ }
|
|
16
|
+
/******/ };
|
|
17
|
+
/******/ })();
|
|
18
|
+
/******/
|
|
19
|
+
/******/ /* webpack/runtime/hasOwnProperty shorthand */
|
|
20
|
+
/******/ (() => {
|
|
21
|
+
/******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
|
|
22
|
+
/******/ })();
|
|
23
|
+
/******/
|
|
24
|
+
/************************************************************************/
|
|
25
|
+
var __webpack_exports__ = {};
|
|
26
|
+
|
|
27
|
+
// EXPORTS
|
|
28
|
+
__webpack_require__.d(__webpack_exports__, {
|
|
29
|
+
TinyLevelUp: () => (/* reexport */ userLevel)
|
|
30
|
+
});
|
|
31
|
+
|
|
32
|
+
;// ./src/legacy/libs/userLevel.mjs
|
|
33
|
+
/**
|
|
34
|
+
* Class to manage user level-up logic based on experience points.
|
|
35
|
+
*/
|
|
36
|
+
class TinyLevelUp {
|
|
37
|
+
/**
|
|
38
|
+
* Constructor
|
|
39
|
+
* @param {number} giveExp - Base experience value for random experience generation.
|
|
40
|
+
* @param {number} expLevel - Base experience needed to level up (per level).
|
|
41
|
+
*/
|
|
42
|
+
constructor(giveExp, expLevel) {
|
|
43
|
+
this.giveExp = giveExp;
|
|
44
|
+
this.expLevel = expLevel;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Validates and adjusts the user's level based on their current experience.
|
|
49
|
+
* @param {Object} user - The user object containing experience and level properties.
|
|
50
|
+
* @returns {Object} The updated user object.
|
|
51
|
+
*/
|
|
52
|
+
expValidator(user) {
|
|
53
|
+
let extraValue = 0;
|
|
54
|
+
const nextLevelExp = this.expLevel * user.level;
|
|
55
|
+
|
|
56
|
+
// Level Up
|
|
57
|
+
if (user.exp >= nextLevelExp) {
|
|
58
|
+
user.level++;
|
|
59
|
+
extraValue = user.exp - nextLevelExp;
|
|
60
|
+
user.exp = 0;
|
|
61
|
+
|
|
62
|
+
if (extraValue > 0) return this.give(user, extraValue, 'extra');
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
// Level Down
|
|
66
|
+
if (user.exp < 1 && user.level > 1) {
|
|
67
|
+
user.level--;
|
|
68
|
+
extraValue = Math.abs(user.exp);
|
|
69
|
+
user.exp = this.expLevel * user.level;
|
|
70
|
+
|
|
71
|
+
if (extraValue > 0) return this.remove(user, extraValue, 'extra');
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
return user;
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
/**
|
|
78
|
+
* Calculates the total experience based on the user's level.
|
|
79
|
+
* @param {Object} user - The user object containing experience and level properties.
|
|
80
|
+
* @returns {number} The total experience of the user.
|
|
81
|
+
*/
|
|
82
|
+
getTotalExp(user) {
|
|
83
|
+
let totalExp = 0;
|
|
84
|
+
for (let p = 1; p <= user.level; p++) totalExp += this.expLevel * p;
|
|
85
|
+
totalExp += user.exp;
|
|
86
|
+
return totalExp;
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Generates random experience points based on the configured multiplier.
|
|
91
|
+
* @param {number} multi - A multiplier for the generated experience.
|
|
92
|
+
* @returns {number} The generated experience points.
|
|
93
|
+
*/
|
|
94
|
+
expGenerator(multi = 1) {
|
|
95
|
+
return Math.floor(Math.random() * this.giveExp) + 1 * multi;
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
/**
|
|
99
|
+
* Gets the experience points required to reach the next level.
|
|
100
|
+
* @param {Object} user - The user object containing the level.
|
|
101
|
+
* @returns {number} The experience required for the next level.
|
|
102
|
+
*/
|
|
103
|
+
progress(user) {
|
|
104
|
+
return this.expLevel * user.level;
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
/**
|
|
108
|
+
* Gets the experience points required to reach the next level.
|
|
109
|
+
* @param {Object} user - The user object containing the level.
|
|
110
|
+
* @returns {number} The experience required for the next level.
|
|
111
|
+
*/
|
|
112
|
+
getProgress(user) {
|
|
113
|
+
return this.expLevel * user.level;
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* Sets the experience value for the user, adjusting their level if necessary.
|
|
118
|
+
* @param {Object} user - The user object.
|
|
119
|
+
* @param {number} value - The new experience value to set.
|
|
120
|
+
* @returns {Object} The updated user object.
|
|
121
|
+
*/
|
|
122
|
+
set(user, value) {
|
|
123
|
+
user.exp = value;
|
|
124
|
+
this.expValidator(user);
|
|
125
|
+
user.totalExp = this.getTotalExp(user);
|
|
126
|
+
return user;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/**
|
|
130
|
+
* Adds experience to the user, adjusting their level if necessary.
|
|
131
|
+
* @param {Object} user - The user object.
|
|
132
|
+
* @param {number} extraExp - Additional experience to be added.
|
|
133
|
+
* @param {string} type - Type of addition ('add' or 'extra').
|
|
134
|
+
* @param {number} multi - Multiplier for experience generation.
|
|
135
|
+
* @returns {Object} The updated user object.
|
|
136
|
+
*/
|
|
137
|
+
give(user, extraExp = 0, type = 'add', multi = 1) {
|
|
138
|
+
if (type === 'add') user.exp += this.expGenerator(multi) + extraExp;
|
|
139
|
+
else if (type === 'extra') user.exp += extraExp;
|
|
140
|
+
|
|
141
|
+
this.expValidator(user);
|
|
142
|
+
user.totalExp = this.getTotalExp(user);
|
|
143
|
+
return user;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/**
|
|
147
|
+
* Removes experience from the user, adjusting their level if necessary.
|
|
148
|
+
* @param {Object} user - The user object.
|
|
149
|
+
* @param {number} extraExp - Experience to remove.
|
|
150
|
+
* @param {string} type - Type of removal ('add' or 'extra').
|
|
151
|
+
* @param {number} multi - Multiplier for experience generation.
|
|
152
|
+
* @returns {Object} The updated user object.
|
|
153
|
+
*/
|
|
154
|
+
remove(user, extraExp = 0, type = 'add', multi = 1) {
|
|
155
|
+
if (type === 'add') user.exp -= this.expGenerator(multi) + extraExp;
|
|
156
|
+
else if (type === 'extra') user.exp -= extraExp;
|
|
157
|
+
|
|
158
|
+
this.expValidator(user);
|
|
159
|
+
user.totalExp = this.getTotalExp(user);
|
|
160
|
+
return user;
|
|
161
|
+
}
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/* harmony default export */ const userLevel = (TinyLevelUp);
|
|
165
|
+
|
|
166
|
+
;// ./src/v1/build/TinyLevelUp.mjs
|
|
167
|
+
|
|
168
|
+
|
|
169
|
+
|
|
170
|
+
|
|
171
|
+
window.TinyLevelUp = __webpack_exports__.TinyLevelUp;
|
|
172
|
+
/******/ })()
|
|
173
|
+
;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(()=>{"use strict";var e={d:(t,r)=>{for(var l in r)e.o(r,l)&&!e.o(t,l)&&Object.defineProperty(t,l,{enumerable:!0,get:r[l]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)},t={};e.d(t,{TinyLevelUp:()=>r});const r=class{constructor(e,t){this.giveExp=e,this.expLevel=t}expValidator(e){let t=0;const r=this.expLevel*e.level;return e.exp>=r&&(e.level++,t=e.exp-r,e.exp=0,t>0)?this.give(e,t,"extra"):e.exp<1&&e.level>1&&(e.level--,t=Math.abs(e.exp),e.exp=this.expLevel*e.level,t>0)?this.remove(e,t,"extra"):e}getTotalExp(e){let t=0;for(let r=1;r<=e.level;r++)t+=this.expLevel*r;return t+=e.exp,t}expGenerator(e=1){return Math.floor(Math.random()*this.giveExp)+1*e}progress(e){return this.expLevel*e.level}getProgress(e){return this.expLevel*e.level}set(e,t){return e.exp=t,this.expValidator(e),e.totalExp=this.getTotalExp(e),e}give(e,t=0,r="add",l=1){return"add"===r?e.exp+=this.expGenerator(l)+t:"extra"===r&&(e.exp+=t),this.expValidator(e),e.totalExp=this.getTotalExp(e),e}remove(e,t=0,r="add",l=1){return"add"===r?e.exp-=this.expGenerator(l)+t:"extra"===r&&(e.exp-=t),this.expValidator(e),e.totalExp=this.getTotalExp(e),e}};window.TinyLevelUp=t.TinyLevelUp})();
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var replaceAsync = require('../../legacy/libs/replaceAsync.cjs');
|
|
4
|
+
var array = require('./array.cjs');
|
|
5
|
+
var clock = require('./clock.cjs');
|
|
6
|
+
var objFilter = require('./objFilter.cjs');
|
|
7
|
+
var simpleMath = require('./simpleMath.cjs');
|
|
8
|
+
var text = require('./text.cjs');
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
exports.asyncReplace = replaceAsync;
|
|
13
|
+
exports.shuffleArray = array.shuffleArray;
|
|
14
|
+
exports.formatCustomTimer = clock.formatCustomTimer;
|
|
15
|
+
exports.formatDayTimer = clock.formatDayTimer;
|
|
16
|
+
exports.formatTimer = clock.formatTimer;
|
|
17
|
+
exports.getTimeDuration = clock.getTimeDuration;
|
|
18
|
+
exports.cloneObjTypeOrder = objFilter.cloneObjTypeOrder;
|
|
19
|
+
exports.countObj = objFilter.countObj;
|
|
20
|
+
exports.extendObjType = objFilter.extendObjType;
|
|
21
|
+
exports.objType = objFilter.objType;
|
|
22
|
+
exports.reorderObjTypeOrder = objFilter.reorderObjTypeOrder;
|
|
23
|
+
exports.getAge = simpleMath.getAge;
|
|
24
|
+
exports.getSimplePerc = simpleMath.getSimplePerc;
|
|
25
|
+
exports.ruleOfThree = simpleMath.ruleOfThree;
|
|
26
|
+
exports.toTitleCase = text.toTitleCase;
|
|
27
|
+
exports.toTitleCaseLowerFirst = text.toTitleCaseLowerFirst;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { extendObjType } from './objFilter.mjs';
|
|
2
|
+
import { reorderObjTypeOrder } from './objFilter.mjs';
|
|
3
|
+
import { cloneObjTypeOrder } from './objFilter.mjs';
|
|
4
|
+
import { countObj } from './objFilter.mjs';
|
|
5
|
+
import { objType } from './objFilter.mjs';
|
|
6
|
+
import { ruleOfThree } from './simpleMath.mjs';
|
|
7
|
+
import { getSimplePerc } from './simpleMath.mjs';
|
|
8
|
+
import asyncReplace from '../../legacy/libs/replaceAsync.mjs';
|
|
9
|
+
import { getAge } from './simpleMath.mjs';
|
|
10
|
+
import { formatCustomTimer } from './clock.mjs';
|
|
11
|
+
import { formatDayTimer } from './clock.mjs';
|
|
12
|
+
import { formatTimer } from './clock.mjs';
|
|
13
|
+
import { getTimeDuration } from './clock.mjs';
|
|
14
|
+
import { shuffleArray } from './array.mjs';
|
|
15
|
+
import { toTitleCase } from './text.mjs';
|
|
16
|
+
import { toTitleCaseLowerFirst } from './text.mjs';
|
|
17
|
+
export { extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, countObj, objType, ruleOfThree, getSimplePerc, asyncReplace, getAge, formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration, shuffleArray, toTitleCase, toTitleCaseLowerFirst };
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import asyncReplace from '../../legacy/libs/replaceAsync.mjs';
|
|
2
|
+
import { shuffleArray } from './array.mjs';
|
|
3
|
+
import { formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration } from './clock.mjs';
|
|
4
|
+
import { countObj, extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, objType, } from './objFilter.mjs';
|
|
5
|
+
import { getAge, getSimplePerc, ruleOfThree } from './simpleMath.mjs';
|
|
6
|
+
import { toTitleCase, toTitleCaseLowerFirst } from './text.mjs';
|
|
7
|
+
export { extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, countObj, objType, ruleOfThree, getSimplePerc, asyncReplace, getAge, formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration, shuffleArray, toTitleCase, toTitleCaseLowerFirst, };
|
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var buffer = require('buffer');
|
|
4
|
+
|
|
3
5
|
/**
|
|
4
6
|
* An object containing type validation functions and their evaluation order.
|
|
5
7
|
*
|
|
@@ -70,7 +72,7 @@ const typeValidator = {
|
|
|
70
72
|
promise: (val) => val instanceof Promise,
|
|
71
73
|
|
|
72
74
|
/** Checks if the value is a Buffer. */
|
|
73
|
-
buffer: (val) => typeof Buffer !== 'undefined' && Buffer.isBuffer(val),
|
|
75
|
+
buffer: (val) => typeof buffer.Buffer !== 'undefined' && buffer.Buffer.isBuffer(val),
|
|
74
76
|
|
|
75
77
|
/** Checks if the value is a Html Element. */
|
|
76
78
|
htmlelement: (val) => typeof HTMLElement !== 'undefined' && val instanceof HTMLElement,
|
package/dist/v1/index.cjs
CHANGED
|
@@ -8,6 +8,7 @@ var objFilter = require('./basics/objFilter.cjs');
|
|
|
8
8
|
var simpleMath = require('./basics/simpleMath.cjs');
|
|
9
9
|
var text = require('./basics/text.cjs');
|
|
10
10
|
var TinyCrypto = require('./libs/TinyCrypto.cjs');
|
|
11
|
+
var TinyCertCrypto = require('./libs/TinyCertCrypto.cjs');
|
|
11
12
|
|
|
12
13
|
|
|
13
14
|
|
|
@@ -29,3 +30,4 @@ exports.ruleOfThree = simpleMath.ruleOfThree;
|
|
|
29
30
|
exports.toTitleCase = text.toTitleCase;
|
|
30
31
|
exports.toTitleCaseLowerFirst = text.toTitleCaseLowerFirst;
|
|
31
32
|
exports.TinyCrypto = TinyCrypto;
|
|
33
|
+
exports.TinyCertCrypto = TinyCertCrypto;
|
package/dist/v1/index.d.mts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import TinyCrypto from './libs/TinyCrypto.mjs';
|
|
2
|
+
import TinyCertCrypto from './libs/TinyCertCrypto.mjs';
|
|
2
3
|
import TinyLevelUp from '../legacy/libs/userLevel.mjs';
|
|
3
4
|
import { extendObjType } from './basics/objFilter.mjs';
|
|
4
5
|
import { reorderObjTypeOrder } from './basics/objFilter.mjs';
|
|
@@ -16,4 +17,4 @@ import { getTimeDuration } from './basics/clock.mjs';
|
|
|
16
17
|
import { shuffleArray } from './basics/array.mjs';
|
|
17
18
|
import { toTitleCase } from './basics/text.mjs';
|
|
18
19
|
import { toTitleCaseLowerFirst } from './basics/text.mjs';
|
|
19
|
-
export { TinyCrypto, TinyLevelUp, extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, countObj, objType, ruleOfThree, getSimplePerc, asyncReplace, getAge, formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration, shuffleArray, toTitleCase, toTitleCaseLowerFirst };
|
|
20
|
+
export { TinyCrypto, TinyCertCrypto, TinyLevelUp, extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, countObj, objType, ruleOfThree, getSimplePerc, asyncReplace, getAge, formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration, shuffleArray, toTitleCase, toTitleCaseLowerFirst };
|
package/dist/v1/index.mjs
CHANGED
|
@@ -6,4 +6,5 @@ import { countObj, extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, objTyp
|
|
|
6
6
|
import { getAge, getSimplePerc, ruleOfThree } from './basics/simpleMath.mjs';
|
|
7
7
|
import { toTitleCase, toTitleCaseLowerFirst } from './basics/text.mjs';
|
|
8
8
|
import TinyCrypto from './libs/TinyCrypto.mjs';
|
|
9
|
-
|
|
9
|
+
import TinyCertCrypto from './libs/TinyCertCrypto.mjs';
|
|
10
|
+
export { TinyCrypto, TinyCertCrypto, TinyLevelUp, extendObjType, reorderObjTypeOrder, cloneObjTypeOrder, countObj, objType, ruleOfThree, getSimplePerc, asyncReplace, getAge, formatCustomTimer, formatDayTimer, formatTimer, getTimeDuration, shuffleArray, toTitleCase, toTitleCaseLowerFirst, };
|