@maiyunnet/kebab 2.0.1 → 2.0.3
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/index.js +1 -1
- package/index.ts +1 -1
- package/lib/sql.js +1 -3
- package/lib/sql.ts +1 -3
- package/lib/text.js +8 -0
- package/lib/text.ts +19 -0
- package/package.json +1 -1
package/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.MOD_CWD = exports.FTMP_CWD = exports.IND_CWD = exports.WWW_CWD = exports.LOG_CWD = exports.LIB_CWD = exports.VHOST_CWD = exports.CERT_CWD = exports.CONF_CWD = exports.ROOT_CWD = exports.SYS_PATH = exports.LIB_PATH = exports.ROOT_PATH = exports.VER = void 0;
|
|
4
|
-
exports.VER = '2.0.
|
|
4
|
+
exports.VER = '2.0.3';
|
|
5
5
|
const dirname = __dirname.replace(/\\/g, '/');
|
|
6
6
|
exports.ROOT_PATH = dirname + '/';
|
|
7
7
|
exports.LIB_PATH = exports.ROOT_PATH + 'lib/';
|
package/index.ts
CHANGED
package/lib/sql.js
CHANGED
package/lib/sql.ts
CHANGED
package/lib/text.js
CHANGED
|
@@ -56,6 +56,8 @@ exports.getFilename = getFilename;
|
|
|
56
56
|
exports.stringifyResult = stringifyResult;
|
|
57
57
|
exports.parseJson = parseJson;
|
|
58
58
|
exports.stringifyJson = stringifyJson;
|
|
59
|
+
exports.isFalsy = isFalsy;
|
|
60
|
+
exports.logicalOr = logicalOr;
|
|
59
61
|
exports.str2int = str2int;
|
|
60
62
|
exports.int2str = int2str;
|
|
61
63
|
const kebab = __importStar(require("~/index"));
|
|
@@ -427,6 +429,12 @@ function stringifyJson(obj, space) {
|
|
|
427
429
|
return v;
|
|
428
430
|
}, space).replace(/"-mybigint-([-+0-9]+?)"/g, '$1');
|
|
429
431
|
}
|
|
432
|
+
function isFalsy(val) {
|
|
433
|
+
return (val === null) || (val === undefined) || (val === '') || (val === false) || (val === 0);
|
|
434
|
+
}
|
|
435
|
+
function logicalOr(v1, v2) {
|
|
436
|
+
return (isFalsy(v1) ? v2 : v1);
|
|
437
|
+
}
|
|
430
438
|
function str2int(str, digits = 3) {
|
|
431
439
|
const num = parseFloat(str);
|
|
432
440
|
const factor = Math.pow(10, digits);
|
package/lib/text.ts
CHANGED
|
@@ -551,6 +551,25 @@ export function stringifyJson(obj: types.Json, space?: string | number): string
|
|
|
551
551
|
}, space).replace(/"-mybigint-([-+0-9]+?)"/g, '$1');
|
|
552
552
|
}
|
|
553
553
|
|
|
554
|
+
type TFalsy = false | '' | 0 | null | undefined | typeof NaN;
|
|
555
|
+
|
|
556
|
+
/**
|
|
557
|
+
* --- 判断一个值是否是虚假的(为 null/undefined/空字符串/false/0) ---
|
|
558
|
+
* @param val 要判断的值
|
|
559
|
+
*/
|
|
560
|
+
export function isFalsy(val: any): val is TFalsy {
|
|
561
|
+
return (val === null) || (val === undefined) || (val === '') || (val === false) || (val === 0);
|
|
562
|
+
}
|
|
563
|
+
|
|
564
|
+
/**
|
|
565
|
+
* --- 类似 || 运算符的效果 ---
|
|
566
|
+
* @param v1 比对值
|
|
567
|
+
* @param v2 比对值
|
|
568
|
+
*/
|
|
569
|
+
export function logicalOr<T, T2>(v1: T, v2: T2): [T] extends [TFalsy] ? T2 : T {
|
|
570
|
+
return (isFalsy(v1) ? v2 : v1) as any;
|
|
571
|
+
}
|
|
572
|
+
|
|
554
573
|
/**
|
|
555
574
|
* --- 为解决精度问题,将字符串数字转换为整数显示 ---
|
|
556
575
|
* --- 以下几个示例都是当 digits 为 2 时 ---
|