sculp-js 1.19.3 → 1.19.5
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/dist/cjs/array.cjs +1 -1
- package/dist/cjs/async.cjs +1 -1
- package/dist/cjs/base64.cjs +1 -1
- package/dist/cjs/clipboard.cjs +1 -1
- package/dist/cjs/cloneDeep.cjs +1 -1
- package/dist/cjs/cookie.cjs +1 -1
- package/dist/cjs/date.cjs +17 -65
- package/dist/cjs/dom.cjs +1 -1
- package/dist/cjs/download.cjs +1 -1
- package/dist/cjs/file.cjs +2 -2
- package/dist/cjs/func.cjs +1 -1
- package/dist/cjs/index.cjs +1 -1
- package/dist/cjs/isEqual.cjs +1 -1
- package/dist/cjs/math.cjs +1 -1
- package/dist/cjs/number.cjs +1 -1
- package/dist/cjs/object.cjs +1 -1
- package/dist/cjs/path.cjs +1 -1
- package/dist/cjs/qs.cjs +1 -1
- package/dist/cjs/random.cjs +1 -1
- package/dist/cjs/string.cjs +10 -7
- package/dist/cjs/tooltip.cjs +1 -1
- package/dist/cjs/tree.cjs +159 -180
- package/dist/cjs/type.cjs +1 -1
- package/dist/cjs/unicodeToolkit.cjs +3 -3
- package/dist/cjs/unique.cjs +1 -1
- package/dist/cjs/url.cjs +1 -1
- package/dist/cjs/validator.cjs +1 -1
- package/dist/cjs/variable.cjs +1 -1
- package/dist/cjs/watermark.cjs +1 -1
- package/dist/esm/array.mjs +1 -1
- package/dist/esm/async.mjs +1 -1
- package/dist/esm/base64.mjs +1 -1
- package/dist/esm/clipboard.mjs +1 -1
- package/dist/esm/cloneDeep.mjs +1 -1
- package/dist/esm/cookie.mjs +1 -1
- package/dist/esm/date.mjs +17 -65
- package/dist/esm/dom.mjs +1 -1
- package/dist/esm/download.mjs +1 -1
- package/dist/esm/file.mjs +2 -2
- package/dist/esm/func.mjs +1 -1
- package/dist/esm/index.mjs +1 -1
- package/dist/esm/isEqual.mjs +1 -1
- package/dist/esm/math.mjs +1 -1
- package/dist/esm/number.mjs +1 -1
- package/dist/esm/object.mjs +1 -1
- package/dist/esm/path.mjs +1 -1
- package/dist/esm/qs.mjs +1 -1
- package/dist/esm/random.mjs +1 -1
- package/dist/esm/string.mjs +10 -7
- package/dist/esm/tooltip.mjs +1 -1
- package/dist/esm/tree.mjs +159 -180
- package/dist/esm/type.mjs +1 -1
- package/dist/esm/unicodeToolkit.mjs +3 -3
- package/dist/esm/unique.mjs +1 -1
- package/dist/esm/url.mjs +1 -1
- package/dist/esm/validator.mjs +1 -1
- package/dist/esm/variable.mjs +1 -1
- package/dist/esm/watermark.mjs +1 -1
- package/dist/sculp-js.d.ts +2275 -0
- package/dist/types/date.d.ts +21 -57
- package/dist/types/file.d.ts +1 -1
- package/dist/types/tree.d.ts +12 -12
- package/dist/types/tsdoc-metadata.json +11 -0
- package/dist/types/unicodeToolkit.d.ts +2 -2
- package/dist/umd/index.min.js +2 -2
- package/package.json +147 -117
package/dist/esm/date.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.19.
|
|
2
|
+
* sculp-js v1.19.5
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -31,9 +31,9 @@ const guessDateTimezone = value => {
|
|
|
31
31
|
return d;
|
|
32
32
|
};
|
|
33
33
|
/**
|
|
34
|
-
* 解析为Date
|
|
35
|
-
* @param {DateValue} value -
|
|
36
|
-
* @returns {Date}
|
|
34
|
+
* 解析为 Date 对象(支持 Safari 兼容性处理)
|
|
35
|
+
* @param {DateValue} value - 时间戳、字符串或 Date 对象
|
|
36
|
+
* @returns {Date}
|
|
37
37
|
*/
|
|
38
38
|
function dateParse(value) {
|
|
39
39
|
const d1 = new Date(value);
|
|
@@ -53,46 +53,7 @@ function dateParse(value) {
|
|
|
53
53
|
throw new SyntaxError(`${value.toString()} 不是一个合法的日期描述`);
|
|
54
54
|
}
|
|
55
55
|
/**
|
|
56
|
-
*
|
|
57
|
-
* @param {DateValue} value 可以是数值、字符串或 Date 对象
|
|
58
|
-
* @param {string} [format] 模板,默认是 YYYY-MM-DD HH:mm:ss,模板字符:
|
|
59
|
-
* - YYYY:年
|
|
60
|
-
* - yyyy: 年
|
|
61
|
-
* - MM:月
|
|
62
|
-
* - DD:日
|
|
63
|
-
* - dd: 日
|
|
64
|
-
* - HH:时(24 小时制)
|
|
65
|
-
* - hh:时(12 小时制)
|
|
66
|
-
* - mm:分
|
|
67
|
-
* - ss:秒
|
|
68
|
-
* - SSS:毫秒
|
|
69
|
-
* @returns {string}
|
|
70
|
-
*/
|
|
71
|
-
// export const dateStringify = (value: DateValue, format = 'YYYY-MM-DD HH:mm:ss'): string => {
|
|
72
|
-
// const date = dateParse(value);
|
|
73
|
-
// let fmt = format;
|
|
74
|
-
// let ret;
|
|
75
|
-
// const opt: DateObj = {
|
|
76
|
-
// 'Y+': `${date.getFullYear()}`, // 年
|
|
77
|
-
// 'y+': `${date.getFullYear()}`, // 年
|
|
78
|
-
// 'M+': `${date.getMonth() + 1}`, // 月
|
|
79
|
-
// 'D+': `${date.getDate()}`, // 日
|
|
80
|
-
// 'd+': `${date.getDate()}`, // 日
|
|
81
|
-
// 'H+': `${date.getHours()}`, // 时
|
|
82
|
-
// 'm+': `${date.getMinutes()}`, // 分
|
|
83
|
-
// 's+': `${date.getSeconds()}`, // 秒
|
|
84
|
-
// 'S+': `${date.getMilliseconds()}` // 豪秒
|
|
85
|
-
// };
|
|
86
|
-
// for (const k in opt) {
|
|
87
|
-
// ret = new RegExp(`(${k})`).exec(fmt);
|
|
88
|
-
// if (ret) {
|
|
89
|
-
// fmt = fmt.replace(ret[1], ret[1].length === 1 ? opt[k] : opt[k].padStart(ret[1].length, '0'));
|
|
90
|
-
// }
|
|
91
|
-
// }
|
|
92
|
-
// return fmt;
|
|
93
|
-
// };
|
|
94
|
-
/**
|
|
95
|
-
* 将日期转换为一天的开始时间,即0点0分0秒0毫秒
|
|
56
|
+
* 将日期转换为一天的开始时间(00:00:00.000)
|
|
96
57
|
* @param {DateValue} value
|
|
97
58
|
* @returns {Date}
|
|
98
59
|
*/
|
|
@@ -101,7 +62,7 @@ function dateToStart(value) {
|
|
|
101
62
|
return new Date(d.getFullYear(), d.getMonth(), d.getDate(), 0, 0, 0, 0);
|
|
102
63
|
}
|
|
103
64
|
/**
|
|
104
|
-
*
|
|
65
|
+
* 将日期转换为一天的结束时间(23:59:59.999)
|
|
105
66
|
* @param {DateValue} value
|
|
106
67
|
* @returns {Date}
|
|
107
68
|
*/
|
|
@@ -111,26 +72,17 @@ function dateToEnd(value) {
|
|
|
111
72
|
return dateParse(d.getTime() - 1);
|
|
112
73
|
}
|
|
113
74
|
/**
|
|
114
|
-
*
|
|
115
|
-
* @param {Date} value -
|
|
116
|
-
* @param {string} [format] -
|
|
117
|
-
*
|
|
118
|
-
*
|
|
119
|
-
*
|
|
120
|
-
* -
|
|
121
|
-
* - D/d:日(不补零)
|
|
122
|
-
* - HH:时(24
|
|
123
|
-
* -
|
|
124
|
-
* -
|
|
125
|
-
* - m:分(不补零)
|
|
126
|
-
* - ss:秒(补零)
|
|
127
|
-
* - s:秒(不补零)
|
|
128
|
-
* - SSS:毫秒(3 位)
|
|
129
|
-
* - SS:毫秒(2 位)
|
|
130
|
-
* - S:毫秒(1 位)
|
|
131
|
-
* - ww:中文完整星期(如:周日)
|
|
132
|
-
* - w:中文星期(如:周日)
|
|
133
|
-
* @returns {string} 格式化后的日期字符串
|
|
75
|
+
* 格式化日期为字符串
|
|
76
|
+
* @param {Date} value - 时间戳、字符串或 Date 对象
|
|
77
|
+
* @param {string} [format] - 模板,默认 YYYY-MM-DD HH:mm:ss
|
|
78
|
+
* @returns {string} 格式化后的日期字符串
|
|
79
|
+
*
|
|
80
|
+
* 模板字符说明:
|
|
81
|
+
* - YYYY/yyyy:年 | MM:月(补零)| M:月(不补零)
|
|
82
|
+
* - DD/dd:日(补零)| D/d:日(不补零)
|
|
83
|
+
* - HH:时(24 小时制,补零)| H:时(不补零)
|
|
84
|
+
* - mm/m:分 | ss/s:秒 | SSS/SS/S:毫秒
|
|
85
|
+
* - ww/w:中文星期
|
|
134
86
|
*/
|
|
135
87
|
function formatDate(value, format = 'YYYY-MM-DD HH:mm:ss') {
|
|
136
88
|
const date = dateParse(value);
|
package/dist/esm/dom.mjs
CHANGED
package/dist/esm/download.mjs
CHANGED
package/dist/esm/file.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.19.
|
|
2
|
+
* sculp-js v1.19.5
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -193,7 +193,7 @@ function compressImg(file, options = { mime: 'image/jpeg', minFileSizeKB: 50 })
|
|
|
193
193
|
beforeSrc: src,
|
|
194
194
|
afterSrc: canvasURL,
|
|
195
195
|
beforeKB: sizeKB,
|
|
196
|
-
afterKB: Number((miniFile.size / 1024).toFixed(2))
|
|
196
|
+
afterKB: Number((Number(miniFile.size) / 1024).toFixed(2))
|
|
197
197
|
});
|
|
198
198
|
};
|
|
199
199
|
image.src = src;
|
package/dist/esm/func.mjs
CHANGED
package/dist/esm/index.mjs
CHANGED
package/dist/esm/isEqual.mjs
CHANGED
package/dist/esm/math.mjs
CHANGED
package/dist/esm/number.mjs
CHANGED
package/dist/esm/object.mjs
CHANGED
package/dist/esm/path.mjs
CHANGED
package/dist/esm/qs.mjs
CHANGED
package/dist/esm/random.mjs
CHANGED
package/dist/esm/string.mjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/*!
|
|
2
|
-
* sculp-js v1.19.
|
|
2
|
+
* sculp-js v1.19.5
|
|
3
3
|
* (c) 2023-present chandq
|
|
4
4
|
* Released under the MIT License.
|
|
5
5
|
*/
|
|
@@ -128,13 +128,16 @@ const stringFill = (length, value = ' ') => new Array(length).fill(value).join('
|
|
|
128
128
|
*/
|
|
129
129
|
function parseQueryParams(searchStr = location.search) {
|
|
130
130
|
const queryObj = {};
|
|
131
|
-
Array.from(searchStr.matchAll(/[&?]?([^=&]+)=?([^=&]*)/g)).forEach(
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
131
|
+
Array.from(searchStr.matchAll(/[&?]?([^=&]+)=?([^=&]*)/g)).forEach(item => {
|
|
132
|
+
const key = item[1];
|
|
133
|
+
const value = item[2];
|
|
134
|
+
const existing = queryObj[key];
|
|
135
|
+
if (!existing) {
|
|
136
|
+
queryObj[key] = value;
|
|
137
|
+
} else if (Array.isArray(existing)) {
|
|
138
|
+
existing.push(value);
|
|
136
139
|
} else {
|
|
137
|
-
queryObj[
|
|
140
|
+
queryObj[key] = [existing, value];
|
|
138
141
|
}
|
|
139
142
|
});
|
|
140
143
|
return queryObj;
|
package/dist/esm/tooltip.mjs
CHANGED