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