almighty-tool 0.0.15 → 0.0.16
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/bun.lockb +0 -0
- package/package.json +2 -9
- package/lib/common/enum-object.d.ts +0 -49
- package/lib/common/enum-object.js +0 -84
- package/lib/common/enum-object.js.map +0 -1
- package/lib/common/general.d.ts +0 -23
- package/lib/common/general.js +0 -118
- package/lib/common/general.js.map +0 -1
- package/lib/common/validator.d.ts +0 -20
- package/lib/common/validator.js +0 -30
- package/lib/common/validator.js.map +0 -1
- package/lib/formats/date.format.d.ts +0 -33
- package/lib/formats/date.format.js +0 -104
- package/lib/formats/date.format.js.map +0 -1
- package/lib/interfaces/common/general.d.ts +0 -175
- package/lib/interfaces/common/general.js +0 -28
- package/lib/interfaces/common/general.js.map +0 -1
- package/lib/interfaces/utils/basic-util.d.ts +0 -22
- package/lib/interfaces/utils/basic-util.js +0 -3
- package/lib/interfaces/utils/basic-util.js.map +0 -1
- package/lib/interfaces/utils/date-util.d.ts +0 -12
- package/lib/interfaces/utils/date-util.js +0 -3
- package/lib/interfaces/utils/date-util.js.map +0 -1
- package/lib/interfaces/utils/format-util.d.ts +0 -7
- package/lib/interfaces/utils/format-util.js +0 -3
- package/lib/interfaces/utils/format-util.js.map +0 -1
- package/lib/locales/en/index.d.ts +0 -33
- package/lib/locales/en/index.js +0 -35
- package/lib/locales/en/index.js.map +0 -1
- package/lib/locales/index.d.ts +0 -0
- package/lib/locales/index.js +0 -2
- package/lib/locales/index.js.map +0 -1
- package/lib/locales/vi/index.d.ts +0 -33
- package/lib/locales/vi/index.js +0 -35
- package/lib/locales/vi/index.js.map +0 -1
- package/lib/locales/zh-cn/index.d.ts +0 -33
- package/lib/locales/zh-cn/index.js +0 -35
- package/lib/locales/zh-cn/index.js.map +0 -1
- package/lib/utils/accurate.util.d.ts +0 -28
- package/lib/utils/accurate.util.js +0 -123
- package/lib/utils/accurate.util.js.map +0 -1
- package/lib/utils/basic.util.d.ts +0 -92
- package/lib/utils/basic.util.js +0 -317
- package/lib/utils/basic.util.js.map +0 -1
- package/lib/utils/crypto.util.d.ts +0 -43
- package/lib/utils/crypto.util.js +0 -105
- package/lib/utils/crypto.util.js.map +0 -1
- package/lib/utils/date.util.d.ts +0 -52
- package/lib/utils/date.util.js +0 -211
- package/lib/utils/date.util.js.map +0 -1
- package/lib/utils/format.util.d.ts +0 -49
- package/lib/utils/format.util.js +0 -98
- package/lib/utils/format.util.js.map +0 -1
- package/lib/utils/heavy-crypto.util.d.ts +0 -66
- package/lib/utils/heavy-crypto.util.js +0 -171
- package/lib/utils/heavy-crypto.util.js.map +0 -1
- package/lib/utils/locale.util.d.ts +0 -20
- package/lib/utils/locale.util.js +0 -206
- package/lib/utils/locale.util.js.map +0 -1
- package/lib/utils/number.util.d.ts +0 -21
- package/lib/utils/number.util.js +0 -33
- package/lib/utils/number.util.js.map +0 -1
- package/lib/utils/random.util.d.ts +0 -47
- package/lib/utils/random.util.js +0 -107
- package/lib/utils/random.util.js.map +0 -1
package/bun.lockb
CHANGED
|
Binary file
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "almighty-tool",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.16",
|
|
4
4
|
"description": "Almighty Tool",
|
|
5
5
|
"author": "happy",
|
|
6
6
|
"private": false,
|
|
@@ -32,22 +32,14 @@
|
|
|
32
32
|
},
|
|
33
33
|
"typings": "types/index.d.ts",
|
|
34
34
|
"dependencies": {
|
|
35
|
-
"async-validator": "^4.2.5",
|
|
36
35
|
"base64-js": "^1.5.1",
|
|
37
|
-
"cookie": "^0.5.0",
|
|
38
|
-
"core-js": "^3.29.0",
|
|
39
36
|
"dayjs": "^1.11.7",
|
|
40
37
|
"deepmerge": "^4.3.0",
|
|
41
|
-
"ets": "^1.0.3",
|
|
42
|
-
"i18next": "^22.4.10",
|
|
43
38
|
"is-what": "^4.1.8",
|
|
44
39
|
"lodash": "^4.17.21",
|
|
45
|
-
"mockdate": "^3.0.5",
|
|
46
|
-
"module-alias": "^2.2.2",
|
|
47
40
|
"nock": "^13.3.0",
|
|
48
41
|
"node-forge": "^1.3.1",
|
|
49
42
|
"node-rsa": "^1.1.1",
|
|
50
|
-
"nodemon": "^2.0.20",
|
|
51
43
|
"qs": "^6.11.0",
|
|
52
44
|
"tslib": "^2.4.0",
|
|
53
45
|
"typescript": "~4.5.5",
|
|
@@ -93,6 +85,7 @@
|
|
|
93
85
|
"eslint-plugin-vue-scoped-css": "2.2.0",
|
|
94
86
|
"jest": "^29.4.3",
|
|
95
87
|
"lint-staged": "^13.1.2",
|
|
88
|
+
"mockdate": "^3.0.5",
|
|
96
89
|
"power-assert": "^1.6.1",
|
|
97
90
|
"prettier": "^2.8.4",
|
|
98
91
|
"stylelint": "^14.9.1",
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
export declare type I18nValues = any[] | {
|
|
2
|
-
[key: string]: any;
|
|
3
|
-
};
|
|
4
|
-
export interface IEnumObjectI18n {
|
|
5
|
-
t: (key: string, values?: I18nValues) => string;
|
|
6
|
-
}
|
|
7
|
-
/** 选项 */
|
|
8
|
-
export interface ISelectOption {
|
|
9
|
-
/** 显示文字 */
|
|
10
|
-
label: string;
|
|
11
|
-
/** 关联的Key */
|
|
12
|
-
key: string;
|
|
13
|
-
/** 关联的值 */
|
|
14
|
-
value: string | number;
|
|
15
|
-
}
|
|
16
|
-
export interface IEnumObjectOptions {
|
|
17
|
-
i18n?: IEnumObjectI18n;
|
|
18
|
-
source: Object;
|
|
19
|
-
sourceName: string;
|
|
20
|
-
}
|
|
21
|
-
export declare class EnumObject<T> {
|
|
22
|
-
/** 国际化工具 */
|
|
23
|
-
private __i18n;
|
|
24
|
-
/** 源 */
|
|
25
|
-
private __source;
|
|
26
|
-
/** 反向源 */
|
|
27
|
-
private __reverseSource;
|
|
28
|
-
/** 源名称 */
|
|
29
|
-
sourceName: string;
|
|
30
|
-
/** 源 */
|
|
31
|
-
source: T;
|
|
32
|
-
/** 选择的项目 */
|
|
33
|
-
getSelectOptions(): ISelectOption[];
|
|
34
|
-
/** 根据key获取对应的翻译 */
|
|
35
|
-
getText(key: string): string;
|
|
36
|
-
/** 根据value获取对应的翻译 */
|
|
37
|
-
getValueText(value: string | number): string;
|
|
38
|
-
/** 根据key获取对应的值 */
|
|
39
|
-
getValue(key: string): string | number | undefined;
|
|
40
|
-
/** 根据value获取对应的key */
|
|
41
|
-
getKey(value: string | number): string | undefined;
|
|
42
|
-
toJSON(): object;
|
|
43
|
-
get i18n(): IEnumObjectI18n;
|
|
44
|
-
constructor(options: IEnumObjectOptions);
|
|
45
|
-
/** 设置默认的i18n对象 */
|
|
46
|
-
setI18n(i18n: IEnumObjectI18n | null): void;
|
|
47
|
-
/** 设置默认的i18n对象 */
|
|
48
|
-
static setDefaultI18n(i18n: IEnumObjectI18n | null): void;
|
|
49
|
-
}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.EnumObject = void 0;
|
|
4
|
-
var tslib_1 = require("tslib");
|
|
5
|
-
var general_1 = (0, tslib_1.__importDefault)(require("./general"));
|
|
6
|
-
var DEFAULT_I18N_KEY = 'almighty-tool/common/enum-object#i18n';
|
|
7
|
-
var i18n = {
|
|
8
|
-
t: function (key, _values) {
|
|
9
|
-
return "".concat(key);
|
|
10
|
-
},
|
|
11
|
-
};
|
|
12
|
-
var EnumObject = /** @class */ (function () {
|
|
13
|
-
function EnumObject(options) {
|
|
14
|
-
var _this = this;
|
|
15
|
-
/** 源 */
|
|
16
|
-
this.__source = {};
|
|
17
|
-
/** 反向源 */
|
|
18
|
-
this.__reverseSource = {};
|
|
19
|
-
if (options.i18n) {
|
|
20
|
-
this.__i18n = options.i18n;
|
|
21
|
-
}
|
|
22
|
-
this.sourceName = options.sourceName;
|
|
23
|
-
this.source = options.source;
|
|
24
|
-
Object.entries(options.source).forEach(function (_a) {
|
|
25
|
-
var key = _a[0], value = _a[1];
|
|
26
|
-
/** 如果是纯数字,则判断对应key的值是否一致 */
|
|
27
|
-
if (!/^[0-9]*$/.test(key) || "".concat(Reflect.get(options.source, value)) !== key) {
|
|
28
|
-
Reflect.set(_this.__source, key, value);
|
|
29
|
-
Reflect.set(_this.__reverseSource, value, key);
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
/** 选择的项目 */
|
|
34
|
-
EnumObject.prototype.getSelectOptions = function () {
|
|
35
|
-
var _this = this;
|
|
36
|
-
var options = [];
|
|
37
|
-
Object.entries(this.__source).forEach(function (_a) {
|
|
38
|
-
var key = _a[0], value = _a[1];
|
|
39
|
-
options.push({
|
|
40
|
-
label: _this.getText(key),
|
|
41
|
-
key: key,
|
|
42
|
-
value: value,
|
|
43
|
-
});
|
|
44
|
-
});
|
|
45
|
-
return options;
|
|
46
|
-
};
|
|
47
|
-
/** 根据key获取对应的翻译 */
|
|
48
|
-
EnumObject.prototype.getText = function (key) {
|
|
49
|
-
return this.i18n.t("enum.".concat(this.sourceName, ".").concat(key));
|
|
50
|
-
};
|
|
51
|
-
/** 根据value获取对应的翻译 */
|
|
52
|
-
EnumObject.prototype.getValueText = function (value) {
|
|
53
|
-
return this.i18n.t("enum.".concat(this.sourceName, ".").concat(this.getKey(value)));
|
|
54
|
-
};
|
|
55
|
-
/** 根据key获取对应的值 */
|
|
56
|
-
EnumObject.prototype.getValue = function (key) {
|
|
57
|
-
return Reflect.get(this.__source, key);
|
|
58
|
-
};
|
|
59
|
-
/** 根据value获取对应的key */
|
|
60
|
-
EnumObject.prototype.getKey = function (value) {
|
|
61
|
-
return Reflect.get(this.__reverseSource, "".concat(value));
|
|
62
|
-
};
|
|
63
|
-
EnumObject.prototype.toJSON = function () {
|
|
64
|
-
return Object.assign({}, this, {});
|
|
65
|
-
};
|
|
66
|
-
Object.defineProperty(EnumObject.prototype, "i18n", {
|
|
67
|
-
get: function () {
|
|
68
|
-
return this.__i18n || general_1.default.getDefault(DEFAULT_I18N_KEY) || i18n;
|
|
69
|
-
},
|
|
70
|
-
enumerable: false,
|
|
71
|
-
configurable: true
|
|
72
|
-
});
|
|
73
|
-
/** 设置默认的i18n对象 */
|
|
74
|
-
EnumObject.prototype.setI18n = function (i18n) {
|
|
75
|
-
this.__i18n = i18n;
|
|
76
|
-
};
|
|
77
|
-
/** 设置默认的i18n对象 */
|
|
78
|
-
EnumObject.setDefaultI18n = function (i18n) {
|
|
79
|
-
general_1.default.setDefault(DEFAULT_I18N_KEY, i18n);
|
|
80
|
-
};
|
|
81
|
-
return EnumObject;
|
|
82
|
-
}());
|
|
83
|
-
exports.EnumObject = EnumObject;
|
|
84
|
-
//# sourceMappingURL=enum-object.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"enum-object.js","sourceRoot":"","sources":["../../src/common/enum-object.ts"],"names":[],"mappings":";;;;AAAA,mEAAgC;AAKhC,IAAM,gBAAgB,GAAG,uCAAuC,CAAC;AAEjE,IAAM,IAAI,GAAG;IACX,CAAC,EAAE,UAAC,GAAW,EAAE,OAAoB;QACnC,OAAO,UAAG,GAAG,CAAE,CAAC;IAClB,CAAC;CACF,CAAC;AAsBF;IAwDE,oBAAY,OAA2B;QAAvC,iBAeC;QApED,QAAQ;QACA,aAAQ,GAAoC,EAAE,CAAC;QACvD,UAAU;QACF,oBAAe,GAA2B,EAAE,CAAC;QAmDnD,IAAI,OAAO,CAAC,IAAI,EAAE;YAChB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;SAC5B;QAED,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;QACrC,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAW,CAAC;QAElC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YACjD,4BAA4B;YAC5B,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,UAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAE,KAAK,GAAG,EAAE;gBAC5E,OAAO,CAAC,GAAG,CAAC,KAAI,CAAC,QAAQ,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvC,OAAO,CAAC,GAAG,CAAC,KAAI,CAAC,eAAe,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;aAC/C;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IA1DD,YAAY;IACZ,qCAAgB,GAAhB;QAAA,iBAYC;QAXC,IAAM,OAAO,GAAoB,EAAE,CAAC;QAEpC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC,UAAC,EAAY;gBAAX,GAAG,QAAA,EAAE,KAAK,QAAA;YAChD,OAAO,CAAC,IAAI,CAAC;gBACX,KAAK,EAAE,KAAI,CAAC,OAAO,CAAC,GAAG,CAAC;gBACxB,GAAG,KAAA;gBACH,KAAK,OAAA;aACN,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,mBAAmB;IACnB,4BAAO,GAAP,UAAQ,GAAW;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAQ,IAAI,CAAC,UAAU,cAAI,GAAG,CAAE,CAAC,CAAC;IACvD,CAAC;IAED,qBAAqB;IACrB,iCAAY,GAAZ,UAAa,KAAsB;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAQ,IAAI,CAAC,UAAU,cAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAE,CAAC,CAAC;IACtE,CAAC;IAED,kBAAkB;IAClB,6BAAQ,GAAR,UAAS,GAAW;QAClB,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;IACzC,CAAC;IAED,sBAAsB;IACtB,2BAAM,GAAN,UAAO,KAAsB;QAC3B,OAAO,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,eAAe,EAAE,UAAG,KAAK,CAAE,CAAC,CAAC;IACvD,CAAC;IAED,2BAAM,GAAN;QACE,OAAO,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,CAAC,CAAC;IACrC,CAAC;IAED,sBAAI,4BAAI;aAAR;YACE,OAAO,IAAI,CAAC,MAAM,IAAI,iBAAO,CAAC,UAAU,CAAC,gBAAgB,CAAC,IAAI,IAAI,CAAC;QACrE,CAAC;;;OAAA;IAmBD,kBAAkB;IAClB,4BAAO,GAAP,UAAQ,IAA4B;QAClC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC;IACrB,CAAC;IAED,kBAAkB;IACX,yBAAc,GAArB,UAAsB,IAA4B;QAChD,iBAAO,CAAC,UAAU,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IACH,iBAAC;AAAD,CAAC,AAlFD,IAkFC;AAlFY,gCAAU"}
|
package/lib/common/general.d.ts
DELETED
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { IGeneralOptionsWithT, IGeneralResult } from '../interfaces/common/general';
|
|
2
|
-
import { IGenerateRandomStringParams } from '../utils/random.util';
|
|
3
|
-
declare const _default: {
|
|
4
|
-
/** 获取全局 */
|
|
5
|
-
getGlobal(): Object;
|
|
6
|
-
/** 设置默认值 */
|
|
7
|
-
setDefault<T>(key: string, value: T): void;
|
|
8
|
-
/** 获取默认值 */
|
|
9
|
-
getDefault<T_1>(key: string): T_1;
|
|
10
|
-
/** 获取有效值 */
|
|
11
|
-
getValidValue(inputValue: number, minValue: number, maxValue: number): number;
|
|
12
|
-
/** 获取时间的字符串 */
|
|
13
|
-
getUtcTimeString(dateTime?: Date | null): string;
|
|
14
|
-
/** 生成随机的字符串 */
|
|
15
|
-
generateRandomString(options?: IGenerateRandomStringParams): string;
|
|
16
|
-
/** 生成击穿缓存参数 */
|
|
17
|
-
generateIjt(): string;
|
|
18
|
-
/** 缓存抓取 */
|
|
19
|
-
cacheFetch<T_2 extends IGeneralResult>(options?: IGeneralOptionsWithT<T_2>): Promise<T_2 | null>;
|
|
20
|
-
/** 版本比较 */
|
|
21
|
-
compareVersion(v01: string, v02: string): 0 | 1 | -1;
|
|
22
|
-
};
|
|
23
|
-
export default _default;
|
package/lib/common/general.js
DELETED
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
var random_util_1 = (0, tslib_1.__importDefault)(require("../utils/random.util"));
|
|
5
|
-
var DEFAULT_KEY = '__ALMIGHTY_TOOL_DEFAULT__';
|
|
6
|
-
exports.default = {
|
|
7
|
-
/** 获取全局 */
|
|
8
|
-
getGlobal: function () {
|
|
9
|
-
if (typeof window !== 'undefined') {
|
|
10
|
-
return window;
|
|
11
|
-
}
|
|
12
|
-
return global;
|
|
13
|
-
},
|
|
14
|
-
/** 设置默认值 */
|
|
15
|
-
setDefault: function (key, value) {
|
|
16
|
-
var g = this.getGlobal();
|
|
17
|
-
var PRE_DEFAULT = Reflect.get(g, DEFAULT_KEY);
|
|
18
|
-
var DEFAULT = PRE_DEFAULT || {};
|
|
19
|
-
if (!PRE_DEFAULT) {
|
|
20
|
-
Reflect.set(g, DEFAULT_KEY, DEFAULT);
|
|
21
|
-
}
|
|
22
|
-
Reflect.set(DEFAULT, key, value);
|
|
23
|
-
},
|
|
24
|
-
/** 获取默认值 */
|
|
25
|
-
getDefault: function (key) {
|
|
26
|
-
var _a;
|
|
27
|
-
var g = this.getGlobal();
|
|
28
|
-
var PRE_DEFAULT = Reflect.get(g, DEFAULT_KEY);
|
|
29
|
-
var DEFAULT = PRE_DEFAULT || {};
|
|
30
|
-
if (!PRE_DEFAULT) {
|
|
31
|
-
Reflect.set(g, DEFAULT_KEY, DEFAULT);
|
|
32
|
-
}
|
|
33
|
-
return (_a = Reflect.get(DEFAULT, key)) !== null && _a !== void 0 ? _a : null;
|
|
34
|
-
},
|
|
35
|
-
/** 获取有效值 */
|
|
36
|
-
getValidValue: function (inputValue, minValue, maxValue) {
|
|
37
|
-
if (inputValue < minValue) {
|
|
38
|
-
return minValue;
|
|
39
|
-
}
|
|
40
|
-
if (inputValue > maxValue) {
|
|
41
|
-
return maxValue;
|
|
42
|
-
}
|
|
43
|
-
return inputValue;
|
|
44
|
-
},
|
|
45
|
-
/** 获取时间的字符串 */
|
|
46
|
-
getUtcTimeString: function (dateTime) {
|
|
47
|
-
if (dateTime === void 0) { dateTime = null; }
|
|
48
|
-
return random_util_1.default.getUtcTimeString(dateTime);
|
|
49
|
-
},
|
|
50
|
-
/** 生成随机的字符串 */
|
|
51
|
-
generateRandomString: function (options) {
|
|
52
|
-
if (options === void 0) { options = {}; }
|
|
53
|
-
return random_util_1.default.generateRandomString(options);
|
|
54
|
-
},
|
|
55
|
-
/** 生成击穿缓存参数 */
|
|
56
|
-
generateIjt: function () {
|
|
57
|
-
return "".concat(new Date().valueOf());
|
|
58
|
-
},
|
|
59
|
-
/** 缓存抓取 */
|
|
60
|
-
cacheFetch: function (options) {
|
|
61
|
-
if (options === void 0) { options = {}; }
|
|
62
|
-
return (0, tslib_1.__awaiter)(this, void 0, void 0, function () {
|
|
63
|
-
var cacheKey, cacheInfo, result;
|
|
64
|
-
return (0, tslib_1.__generator)(this, function (_a) {
|
|
65
|
-
switch (_a.label) {
|
|
66
|
-
case 0:
|
|
67
|
-
cacheKey = "almighty-tool.general.cache.".concat(options.cacheKey);
|
|
68
|
-
if (options.cacheable && options.cacher) {
|
|
69
|
-
cacheInfo = options.cacher.getStorageInfo(cacheKey);
|
|
70
|
-
// 没过期 并且 不为空
|
|
71
|
-
if (!cacheInfo.expired && cacheInfo.value !== null) {
|
|
72
|
-
if (typeof options.cached === 'function') {
|
|
73
|
-
options.cached(cacheInfo.value);
|
|
74
|
-
}
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
if (!(typeof options.fetchFn === 'function')) return [3 /*break*/, 2];
|
|
78
|
-
return [4 /*yield*/, options.fetchFn()];
|
|
79
|
-
case 1:
|
|
80
|
-
result = (_a.sent());
|
|
81
|
-
if (result.errMsg && result.errMsg.endsWith(':ok')) {
|
|
82
|
-
if (options.cacheable && options.cacher) {
|
|
83
|
-
options.cacher.setStorage(cacheKey, result, options.cacheOptions || {
|
|
84
|
-
expiresIn: -1,
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
return [2 /*return*/, result];
|
|
89
|
-
case 2: return [2 /*return*/, null];
|
|
90
|
-
}
|
|
91
|
-
});
|
|
92
|
-
});
|
|
93
|
-
},
|
|
94
|
-
/** 版本比较 */
|
|
95
|
-
compareVersion: function (v01, v02) {
|
|
96
|
-
var v1 = v01.split('.');
|
|
97
|
-
var v2 = v02.split('.');
|
|
98
|
-
var len = Math.max(v1.length, v2.length);
|
|
99
|
-
while (v1.length < len) {
|
|
100
|
-
v1.push('0');
|
|
101
|
-
}
|
|
102
|
-
while (v2.length < len) {
|
|
103
|
-
v2.push('0');
|
|
104
|
-
}
|
|
105
|
-
for (var i = 0; i < len; i++) {
|
|
106
|
-
var num1 = parseInt(v1[i]);
|
|
107
|
-
var num2 = parseInt(v2[i]);
|
|
108
|
-
if (num1 > num2) {
|
|
109
|
-
return 1;
|
|
110
|
-
}
|
|
111
|
-
else if (num1 < num2) {
|
|
112
|
-
return -1;
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
return 0;
|
|
116
|
-
},
|
|
117
|
-
};
|
|
118
|
-
//# sourceMappingURL=general.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/common/general.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Rules, ValidateOption, Values } from 'async-validator';
|
|
2
|
-
import { GeneralResult } from '../interfaces/common/general';
|
|
3
|
-
export interface IValidateOptions {
|
|
4
|
-
/** 字段的前缀 */
|
|
5
|
-
prefix?: string;
|
|
6
|
-
/** 前置的结果 */
|
|
7
|
-
previousResult?: GeneralResult;
|
|
8
|
-
/** 校验的options */
|
|
9
|
-
options?: ValidateOption;
|
|
10
|
-
}
|
|
11
|
-
declare const _default: {
|
|
12
|
-
/**
|
|
13
|
-
*
|
|
14
|
-
* @param rules 规则
|
|
15
|
-
* @param source 校验的源
|
|
16
|
-
* @param options 校验选项
|
|
17
|
-
*/
|
|
18
|
-
validate(rules: Rules, source: Values, options?: IValidateOptions): GeneralResult;
|
|
19
|
-
};
|
|
20
|
-
export default _default;
|
package/lib/common/validator.js
DELETED
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
/* eslint-disable */
|
|
5
|
-
var async_validator_1 = (0, tslib_1.__importDefault)(require("async-validator"));
|
|
6
|
-
var general_1 = require("../interfaces/common/general");
|
|
7
|
-
exports.default = {
|
|
8
|
-
/**
|
|
9
|
-
*
|
|
10
|
-
* @param rules 规则
|
|
11
|
-
* @param source 校验的源
|
|
12
|
-
* @param options 校验选项
|
|
13
|
-
*/
|
|
14
|
-
validate: function (rules, source, options) {
|
|
15
|
-
if (options === void 0) { options = {}; }
|
|
16
|
-
var generalResult = options.previousResult || new general_1.GeneralResult();
|
|
17
|
-
var schema = new async_validator_1.default(rules);
|
|
18
|
-
schema.validate(source, options.options || {}, function (errors) {
|
|
19
|
-
(errors || []).forEach(function (error) {
|
|
20
|
-
generalResult.pushError({
|
|
21
|
-
path: "".concat(options.prefix ? "".concat(options.prefix, ".") : '').concat(error.field),
|
|
22
|
-
message: error.message || '',
|
|
23
|
-
info: 'validate.fail',
|
|
24
|
-
});
|
|
25
|
-
});
|
|
26
|
-
});
|
|
27
|
-
return generalResult;
|
|
28
|
-
},
|
|
29
|
-
};
|
|
30
|
-
//# sourceMappingURL=validator.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/common/validator.ts"],"names":[],"mappings":";;;AAAA,oBAAoB;AACpB,iFAAuF;AACvF,wDAA6D;AAW7D,kBAAe;IACb;;;;;OAKG;IACH,QAAQ,EAAR,UAAS,KAAY,EAAE,MAAc,EAAE,OAA8B;QAA9B,wBAAA,EAAA,YAA8B;QACnE,IAAM,aAAa,GAAkB,OAAO,CAAC,cAAc,IAAI,IAAI,uBAAa,EAAE,CAAC;QACnF,IAAM,MAAM,GAAG,IAAI,yBAAM,CAAC,KAAK,CAAC,CAAC;QAEjC,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,IAAI,EAAE,EAAE,UAAC,MAA8B;YAC5E,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAC,KAAK;gBAC3B,aAAa,CAAC,SAAS,CAAC;oBACtB,IAAI,EAAE,UAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,UAAG,OAAO,CAAC,MAAM,MAAG,CAAC,CAAC,CAAC,EAAE,SAAG,KAAK,CAAC,KAAK,CAAE;oBACnE,OAAO,EAAE,KAAK,CAAC,OAAO,IAAI,EAAE;oBAC5B,IAAI,EAAE,eAAe;iBACtB,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QAEH,OAAO,aAAa,CAAC;IACvB,CAAC;CACF,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import 'dayjs/locale/en';
|
|
2
|
-
import 'dayjs/locale/vi';
|
|
3
|
-
import 'dayjs/locale/zh-cn';
|
|
4
|
-
export declare type I18nValues = any[] | {
|
|
5
|
-
[key: string]: any;
|
|
6
|
-
};
|
|
7
|
-
export interface IDateFormatI18n {
|
|
8
|
-
t: (key: string, values?: I18nValues) => string;
|
|
9
|
-
}
|
|
10
|
-
export declare type DATE_FORMAT_FORMATTER = 'default' | 'full' | 'long' | 'short' | 'date' | 'time' | 'shortTime' | 'step' | 'shortStep' | 'fromNow' | 'toNow';
|
|
11
|
-
export interface IDateFormatOptions {
|
|
12
|
-
/** 格式模板 */
|
|
13
|
-
template?: string;
|
|
14
|
-
/** 格式化 */
|
|
15
|
-
formatter?: DATE_FORMAT_FORMATTER;
|
|
16
|
-
/** 语言 */
|
|
17
|
-
locale?: string;
|
|
18
|
-
}
|
|
19
|
-
/** 日期格式化工具 */
|
|
20
|
-
declare const dateFormat: {
|
|
21
|
-
/**
|
|
22
|
-
* 对日期对象进行格式化
|
|
23
|
-
*
|
|
24
|
-
* - date 日期对象或者日期字符串
|
|
25
|
-
* - options 格式化选项
|
|
26
|
-
*/
|
|
27
|
-
format: (date: Date | string | null, options?: IDateFormatOptions) => string;
|
|
28
|
-
/** 获取格式化模板 */
|
|
29
|
-
getFormatTemplate(options?: IDateFormatOptions): string;
|
|
30
|
-
/** 设置默认的i18n对象 */
|
|
31
|
-
setDefaultI18n: (i18n: IDateFormatI18n | null) => void;
|
|
32
|
-
};
|
|
33
|
-
export default dateFormat;
|
|
@@ -1,104 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
var tslib_1 = require("tslib");
|
|
4
|
-
var dayjs_1 = (0, tslib_1.__importDefault)(require("dayjs"));
|
|
5
|
-
require("dayjs/locale/en");
|
|
6
|
-
require("dayjs/locale/vi");
|
|
7
|
-
require("dayjs/locale/zh-cn");
|
|
8
|
-
var relativeTime_1 = (0, tslib_1.__importDefault)(require("dayjs/plugin/relativeTime"));
|
|
9
|
-
var lodash_1 = (0, tslib_1.__importDefault)(require("lodash"));
|
|
10
|
-
var en_1 = (0, tslib_1.__importDefault)(require("../locales/en"));
|
|
11
|
-
var vi_1 = (0, tslib_1.__importDefault)(require("../locales/vi"));
|
|
12
|
-
var zh_cn_1 = (0, tslib_1.__importDefault)(require("../locales/zh-cn"));
|
|
13
|
-
var general_1 = (0, tslib_1.__importDefault)(require("../common/general"));
|
|
14
|
-
// type SUPPORT_LOCALES = 'zh-cn' | 'en' | 'vi';
|
|
15
|
-
var DEFAULT_I18N_KEY = 'almighty-tool/formats/date-format#i18n';
|
|
16
|
-
var i18n = {
|
|
17
|
-
t: function (key, _values, locale) {
|
|
18
|
-
switch (locale) {
|
|
19
|
-
case 'vi':
|
|
20
|
-
return lodash_1.default.get(vi_1.default, key);
|
|
21
|
-
case 'en':
|
|
22
|
-
return lodash_1.default.get(en_1.default, key);
|
|
23
|
-
case 'zh-cn':
|
|
24
|
-
default:
|
|
25
|
-
return lodash_1.default.get(zh_cn_1.default, key);
|
|
26
|
-
}
|
|
27
|
-
},
|
|
28
|
-
};
|
|
29
|
-
/** 日期格式化工具 */
|
|
30
|
-
var dateFormat = {
|
|
31
|
-
/**
|
|
32
|
-
* 对日期对象进行格式化
|
|
33
|
-
*
|
|
34
|
-
* - date 日期对象或者日期字符串
|
|
35
|
-
* - options 格式化选项
|
|
36
|
-
*/
|
|
37
|
-
format: function (date, options) {
|
|
38
|
-
var _a, _b;
|
|
39
|
-
if (options === void 0) { options = {}; }
|
|
40
|
-
var result = '';
|
|
41
|
-
if (date) {
|
|
42
|
-
try {
|
|
43
|
-
var _i18n = general_1.default.getDefault(DEFAULT_I18N_KEY) || i18n;
|
|
44
|
-
var locale = ((_a = options.locale) !== null && _a !== void 0 ? _a : _i18n.t('AlmightyTool.DateFormat.locale').toString()).toLowerCase();
|
|
45
|
-
var template = (_b = options.template) !== null && _b !== void 0 ? _b : dateFormat.getFormatTemplate(options);
|
|
46
|
-
var day = (0, dayjs_1.default)(date);
|
|
47
|
-
var now = (0, dayjs_1.default)();
|
|
48
|
-
var localeDay = day.locale(locale);
|
|
49
|
-
var i18nPrefix = "AlmightyTool.DateFormat.".concat(options.formatter);
|
|
50
|
-
switch (options.formatter) {
|
|
51
|
-
case 'step':
|
|
52
|
-
case 'shortStep':
|
|
53
|
-
if (now.startOf('day').diff(day) <= 0 && now.add(1, 'day').startOf('day').diff(day) > 0) {
|
|
54
|
-
/** 今天 */
|
|
55
|
-
result = localeDay.format(_i18n.t("".concat(i18nPrefix, ".today"), undefined, locale));
|
|
56
|
-
}
|
|
57
|
-
else if (now.add(1, 'day').startOf('day').diff(day) <= 0 && now.add(2, 'day').startOf('day').diff(day) > 0) {
|
|
58
|
-
/** 明天 */
|
|
59
|
-
result = localeDay.format(_i18n.t("".concat(i18nPrefix, ".tomorrow"), undefined, locale));
|
|
60
|
-
}
|
|
61
|
-
else if (now.subtract(1, 'day').startOf('day').diff(day) <= 0 && now.startOf('day').diff(day) > 0) {
|
|
62
|
-
/** 昨天 */
|
|
63
|
-
result = localeDay.format(_i18n.t("".concat(i18nPrefix, ".yesterday"), undefined, locale));
|
|
64
|
-
}
|
|
65
|
-
else if (now.startOf('year').diff(day) <= 0 && now.add(1, 'year').startOf('year').diff(day) > 0) {
|
|
66
|
-
/** 今年 */
|
|
67
|
-
result = localeDay.format(_i18n.t("".concat(i18nPrefix, ".thisYear"), undefined, locale));
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
result = localeDay.format(_i18n.t("".concat(i18nPrefix, ".longAgo"), undefined, locale));
|
|
71
|
-
}
|
|
72
|
-
break;
|
|
73
|
-
case 'fromNow':
|
|
74
|
-
dayjs_1.default.extend(relativeTime_1.default);
|
|
75
|
-
result = localeDay.fromNow();
|
|
76
|
-
break;
|
|
77
|
-
case 'toNow':
|
|
78
|
-
dayjs_1.default.extend(relativeTime_1.default);
|
|
79
|
-
result = localeDay.toNow();
|
|
80
|
-
break;
|
|
81
|
-
default:
|
|
82
|
-
result = localeDay.format(template);
|
|
83
|
-
break;
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
catch (error) { }
|
|
87
|
-
}
|
|
88
|
-
return result;
|
|
89
|
-
},
|
|
90
|
-
/** 获取格式化模板 */
|
|
91
|
-
getFormatTemplate: function (options) {
|
|
92
|
-
var _a;
|
|
93
|
-
if (options === void 0) { options = {}; }
|
|
94
|
-
var formatter = (_a = options.formatter) !== null && _a !== void 0 ? _a : 'default';
|
|
95
|
-
var _i18n = general_1.default.getDefault(DEFAULT_I18N_KEY) || i18n;
|
|
96
|
-
return _i18n.t("AlmightyTool.DateFormat.formats.".concat(formatter));
|
|
97
|
-
},
|
|
98
|
-
/** 设置默认的i18n对象 */
|
|
99
|
-
setDefaultI18n: function (i18n) {
|
|
100
|
-
general_1.default.setDefault(DEFAULT_I18N_KEY, i18n);
|
|
101
|
-
},
|
|
102
|
-
};
|
|
103
|
-
exports.default = dateFormat;
|
|
104
|
-
//# sourceMappingURL=date.format.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"date.format.js","sourceRoot":"","sources":["../../src/formats/date.format.ts"],"names":[],"mappings":"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"}
|